On this page
flight_takeoff
What is Retrojet
Code push for Flutter: release through the store once, then patch Dart code straight to devices.
Retrojet lets you fix a Flutter app that is already in your users’ hands, without shipping a new build through the App Store or Google Play and waiting for review.
You publish a release through the store as usual, and Retrojet keeps a copy of it. When you change Dart code later, the Retrojet CLI builds a patch for that release and uploads it. Devices that run the release download the patch and use it the next time the app starts.
How an update travels
- Release. You build your app with the Retrojet CLI and upload it. This is the build you also submit to the store.
- Patch. You change Dart code and publish a patch for that release to one channel, for example
staging. - Promote. Once the patch looks good on that channel, you promote the same patch to
stable. Its content does not change, only who receives it. - Rollback. If a patch causes trouble, roll it back on the channel where it hurts. Other channels are not touched.
The CLI is where releases and patches are created. The console is where your team checks them, promotes them, and rolls them back.
The pieces
| Piece | What it does |
|---|---|
CLI (retrojet) | Runs on your machine or in CI. Signs you in, connects a Flutter project, builds and uploads releases and patches. |
| Console (retrojetdev.cloud) | Web app for your team: organizations, members, apps, channels, usage, promote, and rollback. |
| Your app on devices | Checks for a new patch for its release and reports whether it downloaded and installed. |
What works today
Retrojet is in early access. Be aware of what is ready before you plan around it:
| Part | State |
|---|---|
| Console | Ready |
retrojet login, whoami, logout | Ready |
retrojet init | Ready |
retrojet release, retrojet patch | In progress |
| Install script, access tokens for CI | Planned |
Anything in these docs that is not available yet is marked that way where it appears.
Next steps
- Install the CLI
- Quickstart: sign in and connect a project
- Concepts: apps, releases, patches, and channels