Roles per app and environment
Grant read, write, update or delete per module, and limit each role to the apps and environments it should touch.
Development variables, signing files, test builds and runtime secrets for your iOS and Android apps, in one platform your whole team shares. Self-hosted or managed by us.
SDKs for Android, iOS, macOS, tvOS and Flutter
| Name | Key | Value | Status |
|---|---|---|---|
| API base URL | API_BASE_URL | •••••••••• | Active |
| Payments key | PAYMENTS_PUBLIC_KEY | •••••••••• | Active |
| Maps key | MAPS_API_KEY | •••••••••• | Active |
| Legacy endpoint | LEGACY_API_URL | •••••••••• | Inactive |
From the first local build to the app running in production, every step reads from the same place, per app and per environment.
Pull development variables with one CLI command. Every developer and every pipeline gets exactly the values assigned to them, without .env files passed around in chat.
Keep keystores, .p12 certificates, provisioning profiles and service files encrypted in one place, and download them into CI only when it's time to sign.
Upload an .ipa, .apk or .aab and share it with a link or a QR code. Builds are grouped by app and environment, and only the groups you choose can install them.
Your app reads secure variables, pinning certificates and feature flags through the SDK. Update them in the dashboard and apps pick up the change on their next fetch.
// Android · Kotlin
val (variables, certificates) = smartGrow.getAllSecureData()
if (smartGrow.isFeatureEnabled("checkout.new_flow", defaultValue = false)) {
showNewCheckout()
} Roles, access groups and an audit trail across every app and environment.
Grant read, write, update or delete per module, and limit each role to the apps and environments it should touch.
Every change is recorded, with who made it and when.
Single sign-on with Google, GitHub, GitLab, Azure or Apple, plus passkeys and two-factor authentication.
See every device signed in to the CLI and revoke one, or all, in a click.
No buzzwords. This is what happens, and nothing we can't back up.
Secure variables, development variables and files are stored encrypted on the server.
Apps talk to the server over an extra post-quantum encrypted channel on top of HTTPS.
Apps authenticate with an API token and their signing fingerprint, so a copied token alone isn't enough.
The SDK caches values in the Keychain or the Android Keystore.
The same platform either way. Builds always live in your own S3 bucket.
Bring your apps, builds and secrets into one place your whole team can trust.