Skip to main content

Why Progressier cannot work with the multiple environments of your Bubble app

Kevin Basset avatar
Written by Kevin Basset
Updated over 2 weeks ago

You may have noticed that the Start URL parameter for your PWA only accepts a static value. This can be inconvenient if you're developing your app with Bubble.

How web developers handle environments

In web development, the best practice for managing multiple environments is to host the development version on a subdomain. So if your production domain is example.com and your Start URL is example.com/app, then your development environment might be dev.example.com and the matching Start URL dev.example.com/app

Progressier handles that just fine. Under the hood, the software saves your chosen Start URL as a relative URL and applies it to each of your domains at runtime. See this article for reference. No issues there.

How Bubble handles environments

Now, here comes the problem: Bubble doesn't follow best practices. Instead of using subdomains, Bubble places your development environment in a sub-directory:

  • Production: example.com

  • Development: example.com/version-test/

This is problematic because both PWA installation and push notification permissions are granted at the domain level. Once you've installed a PWA or enabled notifications for example.com, operating systems won't let you install or grant permissions separately for example.com/version-test/.

Since both URLs belong to the same domain (example.com), and a PWA manifest can only define one Start URL, Bubble's structure prevents you from having separate PWA installations for development and production simultaneously.

Workaround

If your main goal is simply to have an instance of your development Bubble app accessible from your home screen, there’s a temporary workaround (but only for iOS):

  1. Change the Start URL in our dashboard to example.com/version-test.

  2. Visit your site and install the PWA on your iPhone.

  3. Quickly switch the Start URL back to example.com.

⚠️ Note: This trick only works on iOS. On other operating systems, the Start URL will eventually revert to example.com, making this workaround ineffective.

Did this answer your question?