Quickstart
This guide takes you from nothing to an update running in your app. You need Node.js 22 or later and a React Native 0.76+ app that you can build and run.
1. Install the CLI
Section titled “1. Install the CLI”npm install -g @aetherpush/cli2. Create an account and log in
Section titled “2. Create an account and log in”aether registerThe command asks for your email, a name, and a password, then sends you a verification email. Click the link in that email, then log in:
aether login3. Create an app
Section titled “3. Create an app”aether app add MyAppAether creates the app with two deployments, Staging and Production. Print their keys:
aether deployment ls MyApp -kCopy the Staging key. Your app binary will carry it in the next step.
4. Add the SDK to your app
Section titled “4. Add the SDK to your app”npm install @aetherpush/react-native-code-pushOn iOS, set platform :ios, '15.5' in your Podfile and run pod install.
Add the Staging deployment key to the native configuration. On iOS, in Info.plist:
<key>CodePushDeploymentKey</key><string>YOUR_STAGING_KEY</string>On Android, in strings.xml:
<string moduleConfig="true" name="CodePushDeploymentKey">YOUR_STAGING_KEY</string>Wrap your root component:
import CodePush from "@aetherpush/react-native-code-push";
function App() { return null;}
export default CodePush(App);The SDK also needs small changes to AppDelegate and MainApplication. Follow the platform guides that ship with the package, docs/setup-ios.md and docs/setup-android.md, before you build.
If you use Expo, install @aetherpush/expo-code-push-plugin instead of editing native files by hand. The plugin applies these changes during expo prebuild.
5. Build and run a release build
Section titled “5. Build and run a release build”Build the app in release mode and run it once on a device or simulator. This installs a binary that carries your Staging deployment key.
6. Release an update
Section titled “6. Release an update”Change something visible in your JavaScript code, then release it:
aether release-react MyApp iosUse android for an Android build. The command bundles your app, reads the target binary version from your project, and releases to Staging.
7. Watch it arrive
Section titled “7. Watch it arrive”Close and reopen the app. With the default settings, the SDK checks for an update on every start and downloads it in the background. Restart the app once more and your change is live.
Where next
Section titled “Where next”- Release to part of your audience first:
aether release-react MyApp ios -r 25, then raise it withaether patch MyApp Staging -r 50. - Move a release to Production:
aether promote MyApp Staging Production. - Undo a bad release:
aether rollback MyApp Production. - Ship from CI instead of your laptop: see the CI/CD section.