DeployPulse

Migrating from AppCenter to DeployPulse

Microsoft AppCenter CodePush was retired in March 2025. DeployPulse is a drop-in replacement — the same open-source CodePush SDK, the same over-the-air update protocol, but with active development and new capabilities AppCenter never offered (Auto Rollback, Code Signing, differential packages).

No SDK changes are required. You only need to update your deployment keys and add the server URL to your mobile app config.


Prerequisites

  • dpctl CLI: npm install -g dpctl
  • Node.js 18 or later
  • Your existing AppCenter app names (for reference when re-creating apps)

Step 1 — Create a DeployPulse Account

Sign up at app.deploypulse.io. After registering you will land on the dashboard where you can create your first app.


Step 2 — Re-create Your Apps

DeployPulse maintains separate apps per platform, matching AppCenter's convention:

dpctl app add MyApp-iOS
dpctl app add MyApp-Android

Each app is automatically created with Staging and Production deployments.


Step 3 — Get Your Deployment Keys

dpctl deployment ls MyApp-iOS

The dashboard also shows deployment keys under App → Deployments → key icon.


Step 4 — Update Mobile Config

iOS — Info.plist

Replace the old AppCenter deployment key and add the DeployPulse server URL:

<key>CodePushDeploymentKey</key>
<string>YOUR_DEPLOYPULSE_IOS_KEY</string>
<key>CodePushServerURL</key>
<string>https://api.deploypulse.io</string>

Android — strings.xml

<string name="CodePushDeploymentKey">YOUR_DEPLOYPULSE_ANDROID_KEY</string>
<string name="CodePushServerUrl">https://api.deploypulse.io</string>

See the iOS Setup and Android Setup guides for full configuration details.


Step 5 — Update CI/CD

Replace appcenter codepush release-react with dpctl release-react in your pipelines:

# Before (AppCenter CLI)
appcenter codepush release-react -a MyOrg/MyApp-iOS -d Production

# After (dpctl)
DEPLOYPULSE_ACCESS_KEY="$DEPLOYPULSE_ACCESS_KEY" dpctl release-react MyApp-iOS ios --deployment Production

See the GitHub Actions, Bitrise, CircleCI, GitLab CI/CD, or Jenkins guides for full pipeline examples.


CLI Command Mapping

AppCenter CLIdpctl equivalent
appcenter logindpctl login
appcenter apps listdpctl app ls
appcenter apps create -n <name>dpctl app add <name>
appcenter apps delete -a <app>dpctl app rm <name>
appcenter codepush deployment list -a <app>dpctl deployment ls <app>
appcenter codepush deployment add -a <app> <name>dpctl deployment add <app> <name>
appcenter codepush release-react -a <app>dpctl release-react <app> <platform>
appcenter codepush patch -a <app> <deployment> <label>dpctl patch <app> <deployment> <label>
appcenter codepush promote -a <app> -s <src> -d <dest>dpctl promote <app> <src> <dest>
appcenter codepush rollback -a <app> <deployment>dpctl rollback <app> <deployment>
appcenter codepush deployment history -a <app> <deployment>dpctl deployment history <app> <deployment>

What's New in DeployPulse

DeployPulse includes capabilities AppCenter never offered:

  • Auto Rollback — automatically revert a release if the error rate exceeds a threshold, configurable per deployment
  • Code Signing — RS256 JWT signing so devices verify bundle integrity before applying an update
  • Differential packages — DeployPulse automatically computes a diff between releases and sends only changed files to devices, reducing update download sizes significantly

Further Reading