Get your users onto the new build.
VibeUpdate shows your release notes inside your Expo app, in each user's language, with an Update now button. You decide per build how hard to ask. Your coding agent can write and publish the notes for you.
For Expo SDK 54 to 57, on iOS and Android. No end-user tracking.
What changes after you ship.
Your users spend their time in your app, not on its store page. VibeUpdate puts the release where they are.
Release notes sit on the store page.
The notes open inside your app the next time someone on an older build launches it.
A breaking API change strands old builds.
Mark the build Required. Older builds show Update now and nothing else.
Every app carries its own version check.
One component, mounted once in your root layout.
Notes go out in one language.
Write notes per language. Buttons and headings come translated in 20 languages.
Write what changed.
Type the notes in the dashboard, or let your coding agent write them. The CLI and the MCP server follow the same rules as the dashboard, so a draft stays a draft until you publish a platform.
release.json
{
"visibleVersion": "2.4.0",
"translations": [
{
"locale": "en",
"sharedMarkdown": "- **Offline lists.** Saved lists open offline."
},
{
"locale": "de",
"sharedMarkdown": "- **Offline-Listen.** Listen öffnen auch offline."
}
],
"targets": [
{ "platform": "ios", "buildNumber": 42, "updateMode": "optional" }
]
}Terminal
vibeupdate release create $APP --data "$(cat release.json)"
vibeupdate release publish $APP $RELEASE ios --mode optional --yesPick how hard to ask.
Each iOS and Android target gets its own mode, and users read the notes in their language. This is the real SDK screen, running in your browser.
Set it up with one prompt.
Paste the prompt into your coding agent with your Expo project open. It reads your config first, installs the SDK and leaves releases to you.
Set up VibeUpdate in my existing Expo app. First install and load the public VibeUpdate skill from https://raw.githubusercontent.com/vibelabsdotto/vibeupdate-rn-expo/main/skills/vibeupdate/SKILL.md and follow its instructions. Inspect this project's Expo configuration, native iOS bundle ID, Android package name, build numbers, package manager, and root layout before editing. Install and use the published @vibelabsdotto/vibeupdate-cli for agent operations. Separately install @vibelabsdotto/vibeupdate as the Expo SDK, along with compatible native dependencies from its setup guide. Have me create or select my own VibeUpdate app in the dashboard. Get its actual public appId from the dashboard or via vibeupdate app sdk-setup with the internal app ID; never invent an ID. Configure the SDK once in my app using that appId and my actual matching native identifiers and build metadata. If CLI access needs a token, ask me to create one under Dashboard → Agent Tokens and supply it through a secure private local mechanism such as the CLI's --token-stdin, or have me complete that step locally. Never request, read, or print the token in chat, command arguments, environment variables, repository files, or logs. Verify the CLI context, app setup, and Expo integration with non-publishing checks; tell me what still needs a real device or store check. Do not create or publish releases, push or deploy the app, or change live settings without my explicit consent.
$19 once.
Lifetime access, no subscription. Create and manage as many apps as you need.
You pay once inside the dashboard, through Stripe.