AppFlight CLI
Upload APKs to AppFlight from your terminal or CI pipelines — no Play Store review, no waiting.
Installation
dart pub global activate appflight_cli
Make sure ~/.pub-cache/bin is on your PATH, then:
appflight --help
Quick Start
# 1. Create an account (skip if you have one) — verify the email link
appflight signup
# 2. Log in with that email and password — no key to copy
appflight login
# 3. Initialise a project (creates appflight.json)
appflight init
# 4. Upload a build
appflight upload
No flavors? appflight init prompts for your package name and you're done.
Flavored app? Pass --flavor stage (or whichever flavor) to upload.
No app yet? init offers to create one on AppFlight for you, or run appflight apps create --package <pkg> --name <name> directly.
Commands
| Command | Description |
|---|---|
appflight signup |
Create an AppFlight account from the terminal |
appflight init |
Create appflight.json in the current project |
appflight login |
Sign in with email and password; mints this machine's API key |
appflight logout |
Remove saved credentials |
appflight whoami |
Print the currently authenticated user |
appflight upload |
Upload an APK and notify testers |
appflight keys create --name <label> |
Create a new API key (e.g. for CI) — prints the raw key once |
appflight keys list |
List your API keys |
appflight keys revoke <label-or-prefix> |
Revoke an API key by label or prefix |
appflight apps create --package <pkg> --name <name> |
Create a new app on AppFlight |
appflight apps list |
List the apps on this account, with role and APK count |
appflight upgrade |
Show how to upgrade to First Class |
Releasing a New Version
Manual publish — no CI, no Changesets, no auto-bump. Keep it simple until the CLI warrants more.
- Bump
versionin bothcli/pubspec.yamlandcli/lib/src/version.dart(they must stay in sync — the--versionflag reads from the Dart constant, not the pubspec). - Add an entry to
cli/CHANGELOG.md. - From
cli/, rundart pub publish.
Documentation
Full docs, CI/CD guides, and environment variable reference:
app-flight.com/docs
Issues
Found a bug or have a question? Open an issue in the docs repo:
github.com/mhmzdev/appflight-cli-docs/issues
Libraries
- api/auth_rest
- api/client
- api/endpoints
- commands/analytics_command
- commands/apps_command
- commands/init_command
- commands/init_next_steps
- commands/init_offer
- commands/keys_command
- commands/keys_revoke_command
- commands/login_command
- commands/logout_command
- commands/signup_command
- commands/upgrade_command
- commands/upload_command
- commands/whoami_command
- config/credentials
- config/project_config
- detect/build_resolver
- detect/flutter_detector
- detect/gradle_project_detector
- services/analytics_service
- services/apps_service
- services/auth_logout
- services/auth_service
- services/keys_service
- services/signup_service
- services/upload_service
- util/app_links
- util/exit_codes
- util/faults
- util/gradle_parser
- util/key_matcher
- util/logger
- util/package_validator
- util/plan_label
- util/terms_acceptance
- util/upgrade_hint