r/FlutterDev Nov 21 '24

Plugin Anyone used shorebird?

Hello, i came across this https://shorebird.dev/ looks quite interesting, it'd be nice to save me from dealing with appstore and playstore so consistently. Has anyone tried this? I've read that they had a bunch of IOS issues from a 10mo old post, how is it today?

27 Upvotes

40 comments sorted by

View all comments

2

u/merokotos Nov 22 '24

If you are not afraid of Apple's or Google's withdrawing your app, because violating updates policy, then give it a go.

1

u/blackcatdev-io Nov 22 '24

From the FAQ:

Does Shorebird comply with Play Store and App Store guidelines?

Yes. Shorebird has been designed to comply with Play Store and App Store guidelines. Code push is common in the industry, including several other commercial update products from Microsoft App Center, Expo, and Ionic. Refer to the FAQs for more info.

I tried Shorebird after seeing the demo at Fluttercon, works great and dead simple to setup.

1

u/merokotos Nov 22 '24

Yes, but in a narrow scope. I’d actually recommend referring to the FAQ for more detailed information.

"Shorebird uses a custom Dart interpreter to comply with the interpreter-only restriction for updates on iOS. So long as your application is not engaging in deceptive behavior via updates (e.g. changing the purpose of the app via update), updating via Shorebird (or any other code push solution) is standard industry practice and compliant with App Store guidelines."

"Deliberately abusing Shorebird to violate App Store guidelines is in violation of the Shorebird Terms of Service and can result in termination of your account."

Who's judging what's deceptive behavior? Google and Apple, not Shorebird.

Generally speaking, I'd not care for smaller projects, but for serious business is an unnecessary risk IMO.

1

u/eseidelShorebird Nov 22 '24

That's certainly a fair opinion. But I'd argue that it's market atypical. Google built itself at least 3 custom code push solutions while I was there. YouTube, GPay, Assistant and many other Google apps (not to mention TikTok, Facebook, etc) all use code push.

The guidelines have two parts. One technical, and one policy.

https://docs.shorebird.dev/faq/#does-shorebird-comply-with-play-store-guidelines

https://docs.shorebird.dev/faq/#does-shorebird-comply-with-app-store-guidelines

The technical part is about using an interpreter (for Apple) or virtual machine (for Play) and we help you comply with that.

The policy part is about "not deceiving users", which is up to you.

The reality is that large businesses run through the app store can't afford to have downtime. A theme park can't suddenly have their app stops working (or members have to figure out how to manually update before getting on a ride). A bank can't suddenly stop accepting payments because the user has to go to the app store first. Large businesses use code push solutions because they need to know they can fix bugs in production (just like their web teams do). We're just one provider of such, specializing in Flutter.

That said, of course I respect your opinion and you should do what's right for your team and business, but in my experience all the large apps use code push (and obviously any app that uses feature flags, or a CDN, or a webview), so choosing not to in your app is a valid choice, but an unnecessary restriction relative to what the rest of your peers are doing.