Supported Frameworks
AppFlight CLI supports Flutter and React Native bare workflow.
AppFlight CLI works with both Flutter and React Native (bare workflow). The backend, storage, and tester distribution are framework-agnostic — the CLI adapts to your project structure based on projectType in appflight.json.
Flutter
Fully supported.
- Version and build number read from
pubspec.yaml - APK paths follow standard Flutter build output:
build/app/outputs/flutter-apk/app-<flavor>-release.apk - Works with single-flavor, multi-flavor, or no-flavor setups
# Flavored Flutter app
appflight init --flavors stage:com.myapp.stage,prod:com.myapp
appflight upload --flavor stage
# No-flavor Flutter app
appflight init
appflight upload
React Native
Fully supported (bare workflow only — Expo is not supported).
- Version read from
android/app/build.gradle(versionName+versionCode) - APK paths follow standard Gradle output:
android/app/build/outputs/apk/<flavor>/release/app-<flavor>-release.apk - Works with single-variant and multi-flavor setups
# Flavored React Native app
appflight init --flavors stage:com.myapp.stage,prod:com.myapp
appflight upload --flavor stage
# No-flavor React Native app
appflight init
appflight upload
During appflight init you'll be prompted to choose your framework, or skip the prompt with:
appflight init --project-type react-native
What the CLI reads from Gradle
The CLI parses android/app/build.gradle directly — no Gradle execution required.
| Field | Source |
|---|---|
| Version | versionName + versionCode → 1.2.0+7 |
| APK path | android/app/build/outputs/apk/… |
Override the resolved version at upload time with --version or --build-number.
Kotlin
Coming soon.
Native Android (Kotlin) support is on the roadmap. If you're building without a cross-platform layer and want to use AppFlight, let us know — it helps us prioritise.