Sub Apps - Can Design's Be Unique, Structure/Settings The Same?

Is it possible to have a custom theme on a sub app of a main application and still be able to push new updates to it?

If you think how Shopify deploys shopping carts, each cart is able to have it’s own front end theme, but the back ends are all replicated.

Is this possible with Bubble?

This is possible, and I had the same question when I began going the sub app route. However, it’s not built into Bubble in any way by default. You will need to structure out the app logic and elements on screen in a way that allows you to store all the unique variables for the sub app theme in the database. Shopify uses Liquid Tags to accomplish this. In my case, I ended up creating a single database table that has grown to nearly 200 types of things (mostly text but also images and integers). When launching a new sub app, I duplicate the default table of theme settings from dev and then customize any of the 200 fields using a front end visual editor, similar to Shopify.

What I mean by structuring app logic and elements is that instead of typing out plain text and uploading static images to create your app interface, you must decide which pieces you’d like editable in each sub app and create that data in the database table I mention instead. Think of it like each sub app has its own unique language, but instead of swapping out an English title tag for an alternate language title, you’re really swapping out a default sentence for a custom sentence. There’s no quick way about what I’m proposing… depending on how large your app is, this could mean dozens, hundreds or thousands of elements you will need to modify. If you wanted title tag x to be “themed” you’d insert dynamic data that references “Do a search for: theme’s title tag x’s value”. That way any time that title appears you would be seeing whatever value is stored in the database and not static text. Same for images, you will need to dynamically reference an image in the database table and not upload a static image onto your page canvas. I’d suggest loading this theme table on each page once and reference that instead of doing a new search on each element you want to “themify”. Another tip would be to create as many reusable elements as possible to reduce your workload. If a logo appears in many places, create it once and you’re done. Let me know if I need to clear up any details to make this more understandable.

6 Likes

This topic was automatically closed after 70 days. New replies are no longer allowed.