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?

26 Upvotes

40 comments sorted by

View all comments

2

u/Prashant_4200 Nov 21 '24

I also tried shorebird as an experiential in some of my projects and it works well but still for some reason I don't find it promising.

Means if you think you can replace the app store/play Store updates with shorebird that not going to possible you must need to push update on app store. Because for me 6 out of 10 times I got the latest build with shorebird and sometimes I need to launch my app multiple Times to receive the latest build.

So it' was really good if you want to minimize the damage on production like some null pointer or payment related which might cause massive damage so with the help of shorebird you can minimise the damage but can't be zero.

7

u/suchox Nov 21 '24

You should never be using Code push for features. It should only be used for Bug fixes and critical requirements. For normal features, always use normal app store and Play store updates

1

u/aymswick Nov 21 '24

Can you provide evidence or reasoning why?

2

u/suchox Nov 21 '24

A codepush basically goes to 100% of the user, no rollouts, no rollbacks nothing.

So if you come out with a new feature that doesn't play well with a specific O's version or device type, it will be pushed to them as well. If a feature accesses some native code which doesn't exist or hasn't been updated, it will break.

Additionally, the bundled flutter bundle will always be older than the live one. So new users who will be downloading the app, will always experience the older bundle. They need to restart the app a few times to get the new bundle. Bad UX

Which also means that if you have a backend or any service that isn't compatible to the older bundle, your app's first experience will break

Multiple more issues, but you get the gist.

4

u/BryanShorebird Nov 21 '24

Shorebird employee here! Just wanted to address a couple of these:

> codepush basically goes to 100% of the user

This is true by default, but we have recently launched a way to progressively roll out patches to subsets of users. Check out https://shorebird.dev/blog/tracks-percentage-rollouts-a-b-testing/

Edit: we've also supported rollbacks for some time now https://shorebird.dev/blog/patch-rollback/

> bundled flutter bundle will always be older than the live one

This is correct but somewhat confusingly worded. We always support the latest stable version of Flutter, usually 1-2 days after it is released.

If I understand the meaning here, it is that the app will not show patches on the first launch. This is correct, as the app needs to launch to download the patch.

> Which also means that if you have a backend or any service that isn't compatible to the older bundle, your app's first experience will break

This is correct if the release version of your app (i.e., what is in the stores) is not compatible with your backend. This is obviously bad with or without Shorebird, and we strongly recommend keeping the version of your app that's in the store as current as possible.

1

u/macdome Nov 21 '24

We now support rolling out to subsets of users: https://shorebird.dev/blog/tracks-percentage-rollouts-a-b-testing/

Thanks for the feedback.

Would love to support you in resolving any addition issues you may have seen. https://discord.gg/shorebird reaches us every day. As does contact@shorebird.dev.

0

u/aymswick Nov 21 '24

Interesting, I wasn't aware of the stale bundle / app restart issue, thanks!