appflight_cli 0.1.7
appflight_cli: ^0.1.7 copied to clipboard
AppFlight CLI — upload APKs from your terminal or CI pipelines without the Play Store.
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. Log in with your AppFlight API key
appflight login
# 2. Initialise a project (creates appflight.json)
appflight init
# 3. 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.
Commands #
| Command | Description |
|---|---|
appflight init |
Create appflight.json in the current project |
appflight login |
Save API credentials to ~/.appflight/credentials.json |
appflight logout |
Remove saved credentials |
appflight whoami |
Print the currently authenticated user |
appflight upload |
Upload an APK and notify testers |
Releasing a New Version #
This project uses Changesets + GitHub Actions. The only manual step is recording your change — everything else is automated.
1. Record your change #
cd cli && npx changeset
Pick patch, minor, or major, write a one-line summary, commit the generated .changeset/*.md file alongside your code, and push to dev.
Do not add
[skip ci]to this commit — the release workflow triggers on.changeset/*.mdchanges.
2. CI does the rest #
cli-release.yml detects the changeset and automatically:
- Bumps the version in
package.json,pubspec.yaml, andCHANGELOG.md - Commits the bump back to
dev - Publishes to pub.dev via OIDC
- Pushes a
cli/vX.Y.Ztag
No PR to review, no manual merge.
CI workflows #
| Workflow | Triggers on | Does |
|---|---|---|
cli-ci.yml |
push/PR to dev or main with cli/** changes |
Analyze + test |
cli-release.yml |
push to dev with cli/.changeset/*.md changes |
Bump → publish → tag |
Pushing Flutter/mobile changes to dev does not trigger either workflow — both are path-scoped to cli/**.
Documentation #
Full docs, CI/CD guides, and environment variable reference:
docs.page/mhmzdev/appflight-cli-docs
Issues #
Found a bug or have a question? Open an issue in the docs repo:
github.com/mhmzdev/appflight-cli-docs/issues