Bubble.io's Biggest Advantages & Limitations
Why you should use Bubble.io
I think with Bubble, the biggest advantage is that you start with a blank canvas and you build up your elements from scratch. Compared to using like a WordPress plugin you know the details, the tiny bits of your app that come together to add in the features you build that yourself, you understand it, you're able to go in and very quickly make changes to it. You're not restricted to what other developers have already created.
You can go out there and you can take either your own UI design or what UI designers provided for you. And you can just build it up step by step from scratch, knowing exactly how each part relates to another. And that if you wanted to add in that floating basket icon, or a floating header, or an ability for users to sign up and register, you can do that yourself without relying on third party plugins.
Bubble limitations
Some of the limitations of Bubble, I think this comes back to why if I was effectively creating a brochure website for a business, I would go with WordPress or Webflow. Bubble have been really working on this and I know that they've got further improvements planned; performance that the page load speed for a website or a web app made in Bubble is going to be a lot slower than an efficiently cached WordPress site or Webflow site. So there's performance.
Bubble mobile apps
I also think that there is a limitation on mobile apps. Now you can launch a Bubble app as a mobile app. I did this several years ago and you use a wrapper, you can purchase these. I purchased mine of Code Canyon, but I know that there are Bubble agencies that are providing these.
Web app wrappers
Effectively what it does is someone has created the iOS or the Android code and they've created an app that just embeds a website into the app. That means that the web app that you've designed in Bubble, as long as you've built it responsively, it translates really nicely into the wrapper. There are a couple of issues with this.
One is, first of all, Apple discourages it. I believe it's part of the Apple App Store Developer Guidelines (Section 4.2) that if they detect that your app doesn't offer functionality beyond what a website could offer, which if you're a wrapper there's a good chance that that's the case. Then they're likely to reject the app. Now when I did this a few years ago, and I think that one of the reasons that wrappers are still a primary route that people take is that Apple gets such a large number of app submissions through the App Store that these are sneaking through and they're not being noticed.
Risks of using a mobile wrapper
But I wouldn't be doing this today because I would be concerned that even the slightest update to the wrapper (so the developer that I purchased the wrapper up, they will release new features like in our purchases using on device GPS), even the slightest update, I have to push that onto the App Store. And then what if, at that point, it gets detected as violating the App Store guidelines and my app is taken down? So using a mobile wrapper is still a popular route. You can use the camera, you can use GPS, you can use push notifications, like One Signal. There are plugins that let you send push notifications from your Bubble app through one signal and then through the iOS wrapper. But I don't think that it is a good bet going forward because there is a chance that Apple will remove your app from the App Store for doing this.
Third-party app builders
There are other ways to go about it. There's a service called Thunkable, but that's not quite a perfect fit. What Thunkable allows you to do is you build up a separate UI for mobile (iOS and Android), and then you can use the Bubble database API to send and pull data from your Bubble app. So you're having to build a second version of your app, which isn't ideal because you want to keep your development process lean. So that is one other option.
True Bubble native app code
And that kind of leads me on to thinking about what Bubble could do in the future. If Bubble provided a way for you to have iOS and Android native app code, and having you've built your Bubble app once in the Bubble platform, and you've got your web app and you've got iOS and you've got Android, that would be a real game changer.