Mobile apps (App Store & Google Play)
The same app you build in chat can live on phones three ways: installed straight from the browser, in Google Play, and in Apple's App Store. Cloudrizz handles the parts stores care about: icons, push notifications, sign-in, account deletion and a login for the reviewers.
| Way | What users get | What you do |
|---|---|---|
| Install from the browser | An icon on the home screen and a full-screen app, no store | Nothing. Every deploy makes the app installable. |
| Google Play | A store listing on Android | Download the mobile kit and run the Android build |
| App Store | A store listing on iPhone | Download the mobile kit and run the iOS build (no Mac needed) |
Installable from the browser
Every deploy gives your app a web app manifest and home-screen icons, so phones offer “Add to Home Screen” and open it like an app. Without your own icon, one is made from the app's name and theme color. Fine-tune it in cloudrizz.seo.json (your assistant can do it with update_seo_config):
{
"siteName": "Yoga Studio",
"themeColor": "#0f766e",
"app": {
"shortName": "Yoga",
"icon": "icons/app-512.png",
"backgroundColor": "#ffffff",
"offline": true
}
}nameandshortName: the app name and the label under the home-screen icon (defaults tositeName).icon: a square PNG in your app, 512×512 or larger.backgroundColor,display(standalone,fullscreen,minimal-uiorbrowser) andstartUrl: how it opens.offline: the app keeps working without a connection, showing the last version it saw. Off unless you turn it on, and turning it off again cleanly removes it from phones.androidandios: link the website to your store apps (Google Play web apps, universal links, password autofill):"enabled": falseswitches all of it off.
"app": {
"android": {
"packageName": "com.example.yoga",
"sha256CertFingerprints": ["AB:CD:...:EF"]
},
"ios": { "appIds": ["TEAMID1234.com.example.yoga"] }
}App Store and Google Play: the mobile kit
- Deploy the app to production.
- In the dashboard, open the app and click Download mobile kit. You get a ready iPhone and Android project with the live version of your app.
- Put it in a GitHub repository and run the included builds. iOS is built on GitHub's Macs and lands in TestFlight; Android produces the file you upload to Google Play.
- Follow the README in the kit for the store listings and review.
Your app works in the kit without changes: calls to your API, sign-in, file uploads, realtime and AI streaming all reach your live app. You need an Apple Developer account (yearly fee) and a Google Play developer account (one-time fee).
Phone features
Inside the iPhone and Android app, your pages can use the phone. The same calls are safe on the web, where they simply return nothing:
await cloudrizzNative.haptic("light")
await cloudrizzNative.share({ title, text, url })
const photo = await cloudrizzNative.takePhoto()
await cloudrizzNative.registerPush()
const user = await cloudrizzNative.signInWithApple()Push notifications
Notifications reach both iPhone and Android through your own free Firebase project. Add its service-account key as the app env var CR_PUSH_FCM_SERVICE_ACCOUNT, turn push on in the kit, and send from your server code:
await env.PUSH.send({ userId: user.id, title: "Order shipped", body: "Arrives Friday" })- For iPhones, upload your APNs key (Apple Developer, Keys) in the Firebase console under Cloud Messaging. Without it, iPhone notifications silently don't arrive.
- Call
cloudrizzNative.registerPush()after the user signs in, so the phone is linked to their account andsend({ userId })reaches it. The phone asks the user for permission the first time. - Push works in the App Store and Google Play apps, not in the installable web app.
- Phones that uninstall the app are cleaned up automatically.
What the stores require
- Account deletion in the app if people can sign up. Add a “Delete account” button that calls
POST /_cr/auth/delete-account. See deleting accounts. - Sign in with Apple if you offer Google or Microsoft sign-in. It's built in, see Sign in with Apple.
- A login for the reviewers if the app has sign-in. In the dashboard, open the app's Auth section and click Create review account.
- Purchases of digital content generally go through Apple's and Google's own payment systems. The rules differ by country and are changing, so check them before you launch paid features.