App Store
as code.
Manage App Store configuration in YAML.
Review the diff. Apply your changes.
Submit from your terminal.
Edit locally.
Review the diff.
Fetch the live state. Make your changes.
Preview changes before applying them.
1
metadata:
2
bundleId: app.tideterm.ios
3
version: "2.1"
4
spec:
5
metadata:
6
locales:
7
en-US:
8
whatsNew: Bug fixes.
A local snapshot you can inspect and edit.
Connect
Fetch the current configuration.
Read the selected version from App Store Connect into a local state file.
A snapshot of your selected app and version.
Remote state is unchanged.
Connect
Edit the YAML.
Edit supported fields in YAML. Keep the change alongside your app source.
One local change to the release notes. App Store Connect is unchanged.
- YAML structure✓ Parsed
- Supported fields✓ Valid
- Release notes✓ Present
Live readiness is checked separately.
Connect
Validate the state file.
Check the YAML against the schema and offline rules. Run preflight separately to check live state.
Validation checks structure and rules, not App Review approval.
No remote writes.
Review the exact field and value before applying.
Connect
See the change before you make it.
Compare your desired configuration with fresh remote state. Review the proposed changes.
Proposed update: en-US release notes. Nothing applied yet.
Configuration
updated.
1 illustrated update applied.
App Store Review has not been requested.
Connect
Write the changes you confirm.
Confirm and apply the configuration changes. Check the results for failures or skipped operations.
Configuration changed. App Store Review has not been requested.
Remaining changes.
Fetched configuration matches the YAML.
✓ Empty follow-up planConnect
Fetch again. Check for differences.
Fetch the updated configuration and run another plan. An empty plan means no supported changes remain.
Empty follow-up plan. Submission remains a separate action.
Build, sign and upload with your existing tools.
Manage App Store configuration with Flightline.
Metadata.
Purchases.
Releases.
Use YAML for supported release configuration, or run individual commands. Check the state file locally and run live preflight checks before submission.
View supported workflowsSee the feature matrix for details.
Prepare the release.
Edit metadata and localizations, attach a build, and manage screenshots. Review supported configuration changes before applying them.
Metadata / Assets / State as codeManage purchases and TestFlight.
Manage non-subscription purchases, price schedules and selected TestFlight workflows. Offer issuance and beta notifications remain explicit actions.
In-app purchases / TestFlightSubmit for review.
Choose the items to submit, confirm the draft, run checks, then send it to App Store Review. Release and phased rollout commands run separately.
Submission / Release controlManage the app after launch.
Read sales and performance reports, reply to customer reviews, and inspect webhook deliveries. Use direct commands for supported event and product page experiment operations.
Reviews / Webhooks / AnalyticsApply changes.
Submit separately.
Applying configuration does not submit your app. Choose the version and items, check the draft, then run the submission command.
- 01
Inspect
Verify the selected version and proposed items.
- 02
Assemble
Confirm which items belong in the draft.
- 03
Check again
Rerun preflight and check the draft’s items.
- 04 / Confirmed action
Submit
Send the confirmed draft to App Store Review.
Passing checks does not guarantee App Review approval. IAP attachment and phased release transitions have not yet been verified against a live account.
Start with
your app.
One binary. Your App Store Connect API key.
No SaaS account in between.
go install github.com/ul0gic/flightline@v0.8.0Go 1.26+ · macOS · MIT licensed
View released versions ↗