One of the biggest frustrations for mobile devs is still waiting days or weeks for App Store or Play Store approvals to ship a small bug fix, UI tweak, or critical security patch.
What if you could push those changes instantly, over-the-air, directly to your users’ devices? No resubmission, no waiting, no lost users.
That’s exactly what Shorebird’s Code Push delivers: true over-the-air (OTA) updates for Dart code in Flutter apps. Today we’re doing a complete how-to: set up Shorebird from scratch, create your first release, push a patch live, and see it update in seconds. This is production-level magic, let’s get your app update-ready!
Top questions Flutter devs are asking and how Shorebird answers most of them:
How do I fix production bugs without 7–14 day review cycles?
Can I push UI changes or small features without full app updates?
Is there a reliable code push for Flutter that works on both Android and iOS?
How does Shorebird compare to CodePush or traditional OTA?
What’s the setup cost, and are there limitations (e.g., only Dart code)?
Shorebird answers: it’s built by ex-Flutter team members, uses a modified Flutter engine for seamless patches, supports Android/iOS (web/desktop coming), and only updates Dart code (native plugins/binary changes still need store updates). It’s free for small usage, scales affordably, and includes built-in rollback and A/B testing. Perfect for indie devs and teams tired of store delays.
Prerequisites & Installation
Before we code, prerequisites:
Flutter 3.22+ (stable channel)
A Flutter project (new or existing)
macOS/Linux/Windows machine
Google/Apple developer accounts if releasing to stores
Step 1: Install the Shorebird CLI.
For macOS/Linux:
curl --proto ‘=https’ --tlsv1.2 https://raw.githubusercontent.com/shorebirdtech/install/main/install.sh -sSf | bash
For Windows (PowerShell):
Set-ExecutionPolicy RemoteSigned -scope CurrentUser # Needed to execute remote scripts
iwr -UseBasicParsing ‘https://raw.githubusercontent.com/shorebirdtech/install/main/install.ps1’|iex
Verify:
shorebird --version
Log in (create a free account at console.shorebird.dev if needed):
shorebird login
Initialize & First Release
Navigate to your Flutter project:
cd my_flutter_app
shorebird init
This creates shorebird.yaml, adds internet permission to AndroidManifest, and sets up your app in the Shorebird console.
Create your first release (this builds a patched Flutter engine version):
shorebird release android # or ios
For iOS, you’ll need Xcode/macOS. This uploads the base release. Submit this binary to Google Play/App Store as usual (first time only).
Watch the console: you’ll see your app listed with the release ID.
Pushing Your First Patch
Now the magic: make a small change. Let’s add a debug banner or fix a text bug in main.dart.
Build and push the patch:
shorebird patch android # or ios
This creates a small diff patch (often <1MB) and uploads it to Shorebird servers.
On user devices: next app launch (or background check), the modified engine downloads the patch, applies it, and runs the updated Dart code, no restart needed in many cases (restartless patches supported).
Demo:
Run the old release on the emulator
Show bug
Push patch
Relaunch app → bug fixed instantly!
Best Practices & Limitations 2026
Tips from community experience:
Always test patches on real devices (emulators sometimes miss delegate issues)
Use the shorebird doctor to check the setup
Handle patch failures gracefully (Shorebird auto-rolls back)
For large changes, combine with full release
Limitations: Dart code only (no native plugin updates, no asset/binary changes)
Monitor usage in the Shorebird console (downloads, success rate)
Integrate with CI/CD (Codemagic/GitHub Actions workflows exist)
Quick pause before we finish, I want to invite you to my free newsletter personally. Every week, I send the exact code snippets, early access to full project repos, and the latest 2026 tips that I don’t always cover in videos. It’s completely free, zero spam, and it’s the fastest way to level up. Just click this link: https://techwithsam.dev/newsletter — I’d love to see you there!
That’s it! You now have an instant update superpower with Shorebird; no more store approval anxiety.
Don’t forget to join my Free Newsletter: https://techwithsam.dev/newsletter
Samuel Adekunle, Tech With Sam YouTube
Top comments (0)