Do you have plans for offline Bubble apps?

What happens if you implement this on a page that has dynamic content? You mentioned with static apps it just loads cached data but what is that data changes?

I dont see a lot of movement on the true offline stuff here proposed by @gurun but if this is a quick fix for the time being, I’m interested to implement. I’ll dive in the documentation once again.




i found this site can we use this for PWA? if yes can you guys give us a tutorial on what to put to complete the generator?

1 Like

will try it, Thanks for share
[update] it’s brilliant and easy to use :heart:

can you share how to use it? i don’t know much about PWA but i really like the idea of offline apps I’m not a pure developer also

PWA will give you ability to make offline app for Web, Android & iOS and Windows as well

For Static Offline its easy, just use the website , go through the wizard and fill forms , in last step download services workers, and assets and make other necessary steps as per platform below
This will cache assets, images, htmls, fonts, icons but make sure they are in Manifest file

For Dynamic Offline, little bit tricky and need programming skills specifically in JS,
Plus the above steps you need to tell service worker what to do when website/app goes offline [Cache Database OR use Predefined Data or Just to be Static HTML page]

Steps As per Platform
Download the files and add them to your website [BUBBLE -(YOUR APP)-> Settings TAB >> SEO & METATAGS >> HOSTING FILES IN ROOT DIRECTORY] more details here . Keep in mind different browsers will detect your Progressive Web App in different ways, but the manifest and service workers are required for each of them.

Android & iOS using Polyfill
Download your app package as Xcode and Android Studio , which you can be submitted to the play store and apple app store.

Check out screenshot tutorial walkthrough

Hope it helps :slight_smile: good luck


thank you so much for your tutorial it will help me and all bubble users that want their app to be used offline.

btw what do you mean by that? also what “File Name” should i put? will i upload the zip? or extract it first?

@jigsgfx.gj extract files and upload all one by one
[PWA Builder] will generate Manifest file , simply its JSON file with list of files need to be cache for offline mode
in most automated builder like [PWA Builder] may miss parts of your app not mentioned in the Manifest file

Did you implement this for your app?

The idea of Bubble is to create apps, not static websites so I doubt there are many apps that are completely static and will benefit from this. Could you add this to dynamic pages and have it only focus on the static stuff and ignore the dynamic? I guess its nice but it is exactly the dynamic stuff that gives performance issues.

The water is getting a bit murky with all these different offline options I have to say! But I have the feeling others are working on proper offline stuff as we speak…

1 Like

The benefit of making apps PWA not only Offline apps, it will make app fast to start and integrated into web browser

Yes, I tested the idea on Web app, Android and iOS it works fine but not finished yet I’m working on my project

Definitely it’s too complicated to choose which solution there’s many many options for making apps in these days, my advice focus on the option that matches your strength

Bubble Team also in there future plan they are working on native great apps solution, so for me I wanted to focus more on backend and website but with option to provide mobile native apps

1 Like

just thought I would add to the mix, here is my take on a bubble play store release, complete with service workers, full firebase reference from cloud messaging, AdMob, fully compliant SHA-1 Fingerprints, Both storage & live database added, Firebase authentication with options to switch on email/phone/google/facebook/twitter/GitHub or anon and the flick of a switch - I built a firebase plugin to bring bubble and firebase in line no matter what directions a signup or login comes from, Also sign in quota and multiple address (freebie hoarder) detection thanks to firebase, native push notifications, crash reporting, cloud functions, remote parameters & dynamic linking.

I built it in android studio (canary)

and its now on Google Play

live location & event view.

Individual live user snapshot viewer.

![Screenshot_2017-10-02-09-54-10|281x500] (upload://brmx2hsSUXTdt5qWV8x3KBFX71M.jpg)

It was a fun little project to play with and to be honest if someone with no code experience was to go down this road, they would see the other side. maybe a keyboard and possibly a monitor or two down, but they would get there.

1 Like

Anyone up for writing a spec for offline apps? A middleware for all data components (have to use custom components, listview etc.)

Keep in mind per component we have to choose if the component works offline or if it will tell the user to go online.

So is this “upload a file to root” the thing that everybody pooled money to fund, or is there still an “offline mode” coming to Bubble?

1 Like

What was funded was simply the ability to insert root level files.

  1. It did not bring true PWA support.

  2. It did not bring offline support other than what can be done in a caching layer using service workers. (Would not include data that needs to be fetched from db, only the app content that is visual without db calls.)

To bring true offline functionality, we need the middle layer as I have mentioned earlier see my comment further up: (Do you have plans for offline apps?)

If enough people are up for crowdfunding that, I would be willing to help architect a model for it.
The biggest risk for a third party implementation of this would be lost data for the end user and or inconsistencies of data.

If one needs only read-only data (e.g. product-list information available in a mobile app etc.), the risk is lower.


Okay. What can we do with the root upload?

For example, my app has a noticeable delay as it loads lists of options for menus. They don’t change very often. Can I cache them on the client side so they load instantly? Can I likewise cache search results for a few common searches?

1 Like

A) You could write a data adapter that the menu options build from. Define your menu options as json so they are loaded instantly without any web requests.

B) You could configure service worker to cache the request that your menu pulls data via. Read up on service worker caching and learn how to use Chrome inspect to look at web traffic to figure which request to cache.

Both are quite technical approaches.

I would be interested in contributing to offline applications as well. I am curious to see how far folks have gone already. I know you’ve mentioned a preference toward realm-js and Loki-js (noSQL). What are your thoughts on Firebase Realtime Database (also noSQL), which uses JSON to sync?



The downside to the firebase approach is that you are bypassing bubble completely, seems messy if using bubble to store data like you should.

The point with having a local only store adapter realm/loki etc. would be that we could sync that data up with bubble on next connection active.

What do you think about drafting up a proposal in a separate thread? Maybe a light spec of infrastructure requirements + potential risks - then, bouncing off some feedback with the Bubble team. What is required of the Bubble team vs. what is required of community developers? At minimum, it should generate conversation and allow everyone to gauge interest. (it would also be nice to hear from the Bubble agencies).