012 - We Think About a Plugin
Jonathan: Oh,
I shaved my mustache by the way.
Caleb: Oh,
Jonathan: Yeah, I got sick of it.
Caleb: What did, what did Zach think of it
Jonathan: He doesn't care.
He doesn't
care.
No, he didn't even like blink an eye.
And she was like, oh,
that's so much better.
And Zach, just whatever.
, that's frustrating.
Um, for the last, uh, the
last week though, I have
been calling it our mustache
like Zach and I are growing it together.
Caleb: Welcome back to the robot factory,
a podcast where we build and sell and talk
about and go off on tangents on products.
Uh, I'm your host, Caleb Sharp
Jonathan: I'm the other
host Jonathan Bowers.
Daila can't, uh, can't make it today.
Unfortunately, uh, we promised three host
last episode, and here we are back to two
Caleb: back to two
Jonathan: Just a bit of a
push on some other projects.
And so Daila wants the time to, um,
get some things done on those projects.
So she'll be back next week.
How did building some of that free
stuff we talked about last week ago?
I think you've done.
I think you've done most of it.
Is it
deployed?
Caleb: Yeah.
Yeah, I did most of it.
Well, last week I.
And then finally yesterday
The custom color accents that's in,
so users, um, whether they pay or not
can set a color in their profile and
then they get set when they generate
the images, which is kind of cool.
Um, just like a nice little color picker.
and then a link to a feedback form,
Jonathan: mm-hmm
Caleb: I don't think we talked
about on the podcast last time.
I don't think.
I think it's basically just like,
it sits at the bottom of the page.
If you click it, it's just like a field
where you can put any thoughts you have.
Jonathan: it's using, um, my
new favorite no code tool.
That's not really, what is it?
A no code tool?
It kind of is, I guess it's a form
builder, Tally.so it's amazing.
It's so fast.
and it has lots of integrations.
I can integrate it on the back,
like directly within Tally.
I can integrate it with Notion.
Notion is a document and, uh,
document and knowledge we use.
So with the Tally integration
directly into notion, we can take,
results that people have submitted
via tally the form, and then just
pipe them straight into notion.
Or I can pipe them into
slack, which is kind of cool.
I haven't wired that up yet.
I should do that.
Um, but it's really fast to make
these things and I really like it.
And you get a lot for the free.
Um, whereas most of the, most of the
form builders, they, they don't, they
limit your, they limit your features
so severely that you can't, you
can't really use them or they limit
the number of forms you can create.
Whereas the free tier on Tally is,
it seems like it's just unlimited.
Like you can have unlimited forms,
unlimited responses, you get conditional
logic, you have to have the branding
on it, uh, for free, which is fine.
And, uh, there's a couple of, there's a
couple of like features that they turn
off, but I, I don't feel like I need.
it's pretty slick.
Caleb: How does it compare to
something like, like Google forms?
Jonathan: Um, I, I think it's a lot nicer.
It looks better.
It's way faster to create.
I, I don't know that that's, that's
a big deal breaker for most people.
So, I, I don't know, take
that with grain of salt.
They integrate with more
stuff out of the box.
You can compose the forms in a way that
at can guide the user more in a way
that you want them to fill out the.
whereas I feel like Google forms,
you really just get form fields, but
with, with tally, you can almost,
almost not quite, you can almost type
a whole document in there, so you can
really provide a lot of instructions.
Um, you can put images
in, which is kind of cool.
And they have like notion has
they have a multi column support.
So you can put two column, like stuff
like text or pictures next to text or
pictures, which is actually really nice.
Um, yeah.
It's, it's, it's really good.
Caleb: Cool.
Well, hopefully somebody actually
uses the form and then they
actually see that difference.
Jonathan: I think what I wanna do
at least is have it notify us in
slack that somebody fill out the.
cuz otherwise I don't think I will get
a notification I'll just it'll least
appear and I'll have to hope hopefully
remember to go check it anyways.
Yeah.
Tally.so super awesome form tool.
So you got that hooked up.
You got that little feedback.
which, um, is pretty, pretty slick.
I, I, I gotta say I like, I like those
kinds of tools, like tally specifically,
cuz of the pricing is really nice.
Cuz hooking up contact forms is
kind of a pain to deal with in code.
Like if you have to write that all up,
um, you've gotta deal with, you gotta deal
with a server to receive those requests.
and then you gotta send them somewhere.
So you gotta like send them to a
database or you gotta wire it up to some.
You know, air table or Coda thing,
um, or send emails, which can be
problematic, cuz you end up getting spam.
Caleb: Spam submissions for
forms is so much more common and
annoying than people realize.
Like, even if your website gets
like no traffic, it will get
spam submissions to its form.
If you have one,
Jonathan: so you've hooked up that stuff
and that's all live and ready to go.
I haven't even looked at the site yet.
Let's go look.
Caleb: I don't think I did either.
just, uh, oh yeah.
And the sign up and login buttons,
which is actually pretty important
Jonathan: yeah.
Yeah.
Do we have any, do we have any, any
way of knowing when someone signs up?
Caleb: we won't get any notification,
but I can, I can check to see
if any users have been created.
which I can do right now.
Jonathan: I would like to see
if we could make a notification.
Does, does Supabase have anything?
Directly or would I have
to hook up something?
Caleb: Um, at the very least
they probably have web hooks.
I don't know how, how automatic
it would be to set something up.
Jonathan: I'm looking at, so one of the
other, tools we use is make.com and it's
like, it's like Zapier, you can connect
things to each other, like connect
pieces of software together to do stuff.
Um, but make is, is a lot more flexible.
It's a lot more complicated,
but it's a lot more flexible.
And I, I wonder if super, uh, Nope, shoot
Caleb: It's a, it's a Postgres database.
Jonathan: uh, so I can connect to
post a Postgres database, but it also
has the ability make, has the ability
for me to create, um, a web hook
and a web hook is just a, like, just
something that's super we can give
Supabase the database, a little URL
to say, whenever something happens,
just send the data to this other URL.
Um, and I can create that inside of make.
so we might, we might play around
with that a little bit, But at the
very least you can just log in.
I don't want it to be manual though.
Cuz that feels like something we'd
forget to do much in the same way.
I'd forget to go and check and see
if anybody filled out the form.
Caleb: well it's any consolation
that no one has signed up.
Jonathan: Yeah, I know.
, I'm almost certain of it.
Caleb: yeah.
Jonathan: preparing for eventual success.
Caleb: Right.
Well, I mean, that's not a critical thing.
That's just for like our own
Jonathan: yeah,
Caleb: ego so that we
know when people sign up
Jonathan: but it is like,
it would be a shame.
If the one person who signed up, we didn't
get back to them for a week didn't do
anything for a week and they'll they just
left and it's not, it's not that hard.
It's not that hard to hook that stuff up.
Can you give me access to Supabase
or is that something that you
can't do in the tier that we have?
Caleb: Uh, that's a good question.
It has so many a providers
you can sign in through zoom.
You can sign in through notion
Jonathan: Oh my goodness.
Of
all the
ways that we want to enable someone
to log in zoom is probably at the
Caleb: so you can sign in through Spotify.
Okay.
Now that one's cool.
Jonathan: Through those providers,
does that give us access to pulling
their, like their profile image?
Caleb: I think it depends.
I don't know how automatic it is
with Supabase, but you would set
up like in Spotify or Google or
Facebook or whatever you specify,
what information you need about the.
and then when, when people get their
like, oh, authorization dialogue, it
would like usually they list all the
permissions that are being asked for.
Um, so in theory, probably, yeah,
it depends how much is exposed
or if you just have to, you might
have to use whatever Spotify, API,
whatever, to actually get that info.
Jonathan: There's there's another,
so there's another service that,
that I've used in the past.
unavatar.io.
you can get an avatar for, for a
person based just purely on their
username or their email address.
So if you've got the user's email
address, which we would, we would
have, because they've logged in, we
can go and ask unavatar to go fetch
their, uh, their LinkedIn image.
it's pretty, it's pretty sweet.
It works.
It works really well.
If you're, if you're building a small
little like demo product, And you
wanna add, add some pizazz to your
client, uh, when they log in, just,
just make the image use unavatar
and pipe in their email address.
And then they'll see, they'll
see the picture of themselves.
It's pretty cool.
We'll see if we can get some
users using the free tier.
Um, I still have to publish some
content that I'm working on.
so the other thing that I wanted
to get your thoughts on is.
a little bit on the heels of the
discussion we had last week around
creating plugins and templates and
things in the bubble ecosystem.
What are your thoughts around
repurposing the tech for OpenHouse.social
as a generic bubble plugin?
So a bubble developer, somebody who's
making a website on bubble can go
and use our plugin and say, Here's a
page I made in bubble that's dynamic.
Cuz you can do dynamic pages in bubble
and I want not OpenHouse.social.
We might call it something else, but
I want our plugin to go and render the
image for me dynamically based on the URL.
Cause I
don't think something like
that exists in bubble.
Caleb: well, I th the problem with
that is, I think we'd have to have
some kind of service running somewhere,
cuz I don't think, I don't think
our bubble plugging could like spin
up an instance of Chrome anywhere.
I don't.
Jonathan: No, the bubble plugin
couldn't, we'd have to run a service yet.
we'd have to have something running on
our infrastructure that is receiving
requests from, from this bubble plugin.
Um, But the way it works
is it, it can go and fetch.
I, I don't, I don't know the details
I have to check in with, um, Amber and
Daila, but it can go and fetch, uh, a
bubble developer's page, whether that's
like somehow needs authentication
or authorization to do that.
And then.
Grabs that dynamic page and renders
it as an image and then gives it
back to them so that they can use it.
They could use the plugin to create,
dynamic, open graph images for
their, pages on bubble or what,
for whatever other purpose they
needed, they needed a dynamic image.
And then the bubble ecosystem
allows for subscriptions.
We can sell subscriptions within bubble.
So the bubble plugin
could include with it.
AC like access to our,
externally hosted service.
Caleb: That's an interesting idea.
Is it maybe?
Easier to just make a plugin
that uses one of those existing
services already that lets you
Jonathan: um, yeah, probably it's
probably easier to do that to start.
Um, but then as a way of controlling
costs, we could just bring it
back to our own, to our own thing.
Um, I don't know what the.
I dunno what the restrictions
are for bubble plugins.
Like I know for Coda, for example, when we
make a pack with Coda, we have to disclose
the service, the external services
that it accesses, and then that, that
information is disclosed to the user or
the, or the person who's using the pack.
So they can see when they, when, uh,
someone's using our export tables.
Pro pack in Coda.
They can see that it connects to
our service on the back end and
they, they can see the URL there.
So I, I wouldn't want to necessarily
do that, um, for the bubble plugin,
because ultimately we would be,
uh, bringing all that into our
own, to our own infrastructure.
But, yeah, as a way of, as a way of
testing that out real quick, I think
we could, yeah, I think we could do.
I think it's more around how we would
access those pages that are potentially
not actually available to the public.
I don't know why they wouldn't
be though, cuz they're just
images that are being generated.
Um, but there might just be some
connection that we have to worry
about from that service back to
bubble that some of those third
party services can't can't deal with.
I don't know.
I don't know if that's the case or not.
Caleb: Right.
Jonathan: I'd have to figure
out how they charge money, how
they charge users in bubble.
But if they paid like a flat rate per
month, but then used the third party
service so much that it actually cost
us more than they were paying for
the, for the monthly subscription.
We have to
Caleb: Well, yeah, I imagine
if we, if we did it so that
it was using another service.
We might just make the user put their
own, like API key in for that service.
I think there's some plugins that
were like that, like there's, um,
uh, I think it was a, I think it's a
Stripe plugin or maybe it was Plaid.
Um, but you just put
in like your API token.
Um, so you're already paying for that.
And then you also pay for the
plugin, which is like a one time.
Jonathan: yeah, that feels a little
bit different because like plaid,
um, plaid is a service for doing bank
transfers in, uh, or consumer payments
but the difference between those is
like, you actually need those accounts.
You, you have to be in charge of that,
cuz it's it's money happening, Whereas
this, this might not necessarily need,
you know, you don't have to go and sign
up for this other third party service.
Um, but anyways, okay, I'm gonna, I'm
gonna noodle on that a little bit and
uh, I'm gonna check with Daila and Amber
and see if they've got any insight into
some, if something like this exists,
because it feels like it would be pretty
easy to build, I think, and I don't
know if the demand is there or not,
but, um, I know, I know there's a few
cases where we've wanted to, to attach
open graph images to certain pages.
Um, they are fine with being
static, but it would be nice if
it could possibly be dynamic.
we'll see, we'll see where that goes.
And, uh, hopefully next week Dayla
is back and she can maybe even give
us some updates on what's happening
on property management stuff.
um, but thanks for listening to the
robot factory podcast, I've been
one of your hosts, Jonathan Bowers.
Caleb: And I've been the
other host, Caleb sharp.
Jonathan: Uh, D du D
Duffard Dufford ah, shoot.
I can't say her last name properly.
She'll be back next week, hopefully.
And we'll see you all next week.
Bye.
Caleb: Bye bye.
Jonathan: tools that we, one of the
other, no code platforms that we use is
Caleb: oh, no, it's contagious.
Jonathan: it's traveling
through the wires.