App Store as Code
Your App Store is a file now.
Flightline is the first declarative tool for App Store Connect. Fetch live state into YAML, lint it offline, plan the diff, apply idempotently. Rejections stop being a surprise.
go install github.com/ul0gic/flightline@latestapiVersion: flightline.dev/v1alpha1
kind: AppState
metadata:
bundleId: app.tideterm.ios
version: "2.1"
platform: IOS
spec:
version:
releaseType: AFTER_APPROVAL
copyright: 2026 Tideterm
metadata:
locales:
en-US:
name: Tideterm
subtitle: Tide tables in your terminal
whatsNew: Offline harbor data for 1,400 stations.The lifecycle
Four verbs between you and a clean submission.
The Terraform workflow, pointed at App Store Connect. Steps one through three never write. Nothing reaches Apple until you say apply --confirm.
$ flightline fetch app.tideterm.ios > state.yaml$ head -7 state.yamlapiVersion: flightline.dev/v1alpha1kind: AppStatemetadata: bundleId: app.tideterm.ios version: "2.1" platform: IOSspec:Real plan output shape: ~ update, + create, - delete.
Preflight
Apple’s checklist runs on your laptop now.
Eleven rules cover the clerical rejection causes: missing screenshots, unanswered compliance, absent review assets. Run them offline in seconds, or live against ASC when you want certainty before you submit.
Every rule, with fix hintsObservation
The ASC web UI becomes optional.
Everything Apple scatters across a dozen portal screens reads as one command surface. Sales, reviews, crashes, performance: composable, scriptable, yours.
$ flightline sales app.tideterm.ios --days 30Thirty days of units and proceeds, no Sales portal.
$ flightline reviews summary app.tideterm.iosRating histogram and the latest customer reviews.
$ flightline beta-feedback crash app.tideterm.iosTestFlight crash feedback with device context.
$ flightline performance app.tideterm.iosLaunch time, hang rate, memory: Apple metrics as data.
$ flightline finance app.tideterm.ios --month 2026-06Monthly financial reports, pipeable instead of downloadable.
$ flightline analytics request app.tideterm.ios --waitApp Store analytics exports, requested and fetched in one go.
Every command speaks --output json. Pipe it to jq, feed it to an LLM, cron it into snapshots.
Lineage
Every platform got its “as code” moment.
Infrastructure got Terraform. Kubernetes got Helm. The App Store got a web form and a checklist you keep in your head. Flightline closes that gap.
| Tool | Domain | Manages as code |
|---|---|---|
| Terraform | AWS, GCP, Azure | Infrastructure |
| Pulumi | Cloud + Kubernetes | Infrastructure |
| Helm | Kubernetes | Releases |
| Flightline | App Store Connect | The App Store |