My Early Experiences Going from Bubble to Wappler + Translating Bubble to Wappler

Thanks for creating this new category for going from Bubble to Wappler @George!

I’ll share just a little bit of my early experiences exploring Wappler, from the perspective of someone coming from Bubble, in the hopes that it will help others bridge the knowledge gap.

If you guys are like me, when analyzing if Wappler would be a good fit, I’m looking for the equivalent pieces of functionality that I have in Bubble. I have not come across anything that is not possible in Wappler that I have in Bubble, but I am just getting to know Wappler. My understanding is that you can drop in custom code if you really get stuck on something but so far even the out of the box functionality is the same or better in Wappler.

There’s a lot of good documentation throughout the forum (thanks @Teodor!) that I bookmark. Also, there’s helpful documentation in the dedicated spot https://docs.wappler.io/. So far, I’ve found the most helpful aspects of the documentation in comparing to Bubble to be the server-side components https://docs.wappler.io/t/server-connect-introduction/2835. Going through each example is time well spent and will help you find equivalent Bubble functionality in Wappler.

Most helpful (for me) functionality covered is:

  • Getting the database connected for use in workflows
  • How to set up Wappler workflows
  • Creating repeating groups
  • Displaying database data in repeating groups
  • Displaying dynamic text in text elements
  • Displaying data in a popup

You’ll notice that the above functionality items use Bubble terminology. One of the more difficult things has been the change in terminology, after all, how can we even know what to look for in the documentation/forum if we don’t know what the equivalent is called in Wappler? Here are a few terms from Bubble translated to their use in Wappler to get you off on the right foot.

Bubble Wappler
Workflow tab Server connect
Workflows Server actions
Workflow actions Action steps
Do a search for Query
List Array
Repeating groups tables w/repeat regions “make repeat children”
Elements Components (From Bootstrap 4 Framework)
Group Column
Text element Paragraph component
Input element Text input component, Forms
Popup Modal
Start/Edit Workflow Dynamic/Static Events (on components)
Conditions Dynamic Attributes (on components)

Also, it’s important to understand that the starting layout structure on a page usually looks like this: container > row > column.

The framework to understand is Bootstrap 4. Here’s a good crash course on YouTube: https://www.youtube.com/watch?v=hnCmSXCZEpU

Hopefully that helps people get started faster!

35 Likes

Dont forget the wappler YouTube channel for video tutorials

4 Likes

Great list! Now I know the Bubble terminology as well :slight_smile:
Just added some nice markdown formatting

3 Likes

Hey @dserber, many thanks for this post… exactly what I was thinking we need… and now we have somewhere to find all this kind of thing.
Wonderful! :rocket:

2 Likes

Yes, @dserber, this post is very much appreciated! Thanking you for going through all the trouble to write that out

2 Likes

Big Thanks @dserber
I’m trying to migrate from bubble to wappler. Hopefully I find the answer here.

1 Like

Thank you for putting this together, super useful.

WOW - there’s a lot more overlap in my existing understanding from Bubble and other web dev projects that is really making Wappler stand out!

I was feeling like I was missing some part of understanding that clicked watching this:

… now I went back and a lot of other things made sense. Thank you to everyone who put effort in and shared it here and on the YouTube channel

3 Likes

hi @dserber anything equal to Bubble Option Sets to Wappler? Is it same as the table inside DB?

Nobody knows(except the engineering team) what data store they selected for option sets. Probably database as you mention but one thing is clear. It’s stored and retrieved on and from the server so for your use case your database would be equivalent and probably enough.

Option sets in Bubble are not stored in the database but hard coded. You could archive something similar in Wappler by hard coding the values or storing them in local storage etc.

Can you elaborate? How do you know they are not stored in database?

Edit:

Options are faster to access, as they require no database reads.

No need to elaborate as it’s clear from their docs. Still they come from the backend. Meaning that browser storage would not be equivalent. More like a file read from server.

Why is this important and why it needs further clarification? Because local storage is not secure and hard coding the values is not practical.

So @baitabihaviour just use the database. You will be fine :slight_smile:

Aren’t we just talking about enums in the db?

1 Like

Yes. There is a problem in concept as Bubble publicizes the feature as not DB dependent.

Bubble stores option sets in a hard coded json that gets load on page load. It’s not secure since that data is available on page load no matter if someone is logged in or not. I know because I checked what data Bubble loads and had a couple of calls with them.

You could do the same in Wappler if you don’t want to run a db query or store whatever you want from the db in local storage to only load it ones or cache it.

Not secure as mentioned before but that’s what Bubble option sets do and they’re not meant to be secure.

2 Likes

Thanks for the info! Tbh I left Bubble before they were implemented so I never checked them.

Figured this was worth bumping.

3 Likes

thanks for your detailed journey and quick walkthrough especially terms used in wappler !

Thank you for the list very helpful.

Bubble no longer has a fire, all I see is the ashes of the castle.

I’m excited to test out what Wappler can do for me, I wasted 8 years bubbling away, hopefully the next 8 years I can build real value.

1 Like