Skip to content

jafforgehq/orbion

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Orbion app icon

Orbion

Find what to build. Grow what you shipped. Prove it's working.

An on-device, macOS-native App Store Optimization copilot for indie developers.
Scouts markets before you build, tracks what you shipped, and closes the loop by attributing rank movements back to the specific metadata rewrites you copied from the app.

build license platform


Orbion dashboard

Three things, one Mac app

  • FIND - pre-launch market scouting. Paste a keyword, get a verdict (wide_open / workable / saturated / brutal), a cross-market comparison, and long-tail variants generated by on-device Foundation Models.
  • GROW - post-launch ASO copilot. Tracked apps get keyword ranks, competitor monitoring, review clustering with reply drafts, a weekly plan, and a metadata rewriter.
  • PROVE - every metadata candidate you copy is tracked from copy → adoption → 7/14/28-day rank delta verdict. The wins ledger on the dashboard is built from real rank movements, not guesses.
  • Optional App Store Connect - connect your ASC API key (Settings → App Store Connect) and Orbion auto-detects subtitle and keywords-field adoptions too, instead of asking you to mark them shipped manually. Credentials are Keychain-only.

The PROVE loop is the wedge. No other indie ASO tool ties rewrites to outcomes.

See it in action

Keywords tab with KPI strip, ranks, deltas, and inline SERP competitor stacks

Keywords - KPI strip at the top (best, median, distribution buckets, weekly movement), rank + 7-day delta + Demand Index per row, and the inline SERP competitor stack so you can see who you're up against per keyword without leaving the table.

Research view - keyword verdict + SERP

Research - paste any keyword, get the verdict, the SERP, and Foundation Models–generated positioning angles.

Competitors tab

Competitors - auto-discovered from your SERP results, scored, and watched for metadata changes.

Metadata rewriter sheet

Rewriter - Foundation Models drafts 3–5 candidates per field, on-device. Every Copy gets tracked through to a rank-delta verdict.

Reviews tab with theme clustering

Reviews - themed by Foundation Models, with one-tap reply drafting per review.

Status

This is a working macOS app, not a prototype. The build is green, ~10k lines of Swift, no external services, no API keys to manage.

  • Platform: macOS 15.1+ (Apple Silicon assumed)
  • AI: Foundation Models on-device (macOS 26+); heuristic fallback otherwise
  • External APIs: iTunes public endpoints (no auth) + optional App Store Connect API (your own .p8 key)
  • License: MIT

Install

Grab the latest signed + notarized build from GitHub Releases, open the .dmg, drag Orbion into Applications. Universal binary (Apple Silicon + Intel).

Building from source

git clone https://github.com/jafforgehq/orbion.git
cd orbion
open Orbion.xcodeproj

Build the Orbion scheme, ⌘R to run. The app opens to onboarding, picks a country, asks for one App Store URL or ID, and starts collecting rank data.

Local build overrides

Project signing is configured for the original author's team. To build under your own team:

  • In Xcode: open the project, select the Orbion target → Signing & Capabilities → change Team to yours.
  • From the command line: copy Configs/Local.xcconfig.example to Configs/Local.xcconfig, edit it, and pass -xcconfig Configs/Local.xcconfig to xcodebuild.

Configs/Local.xcconfig is gitignored so your team ID never lands in the repo.

Tests

xcodebuild test \
  -project Orbion.xcodeproj \
  -scheme Orbion \
  -destination 'platform=macOS' \
  -only-testing:OrbionTests

CI runs the same on macos-15 for every push and PR - see .github/workflows/build.yml.

Documentation

  • docs/ARCHITECTURE.md - system layout, sync pipeline, AI layer, the PROVE loop end to end.
  • docs/DECISIONS.md - what was removed from earlier iterations and why. Useful for understanding what shapes Orbion's surface area.

Contributing

The codebase is small enough to read end to end in an afternoon. Good places to start poking:

  • Orbion/Scoring/ - every ranked output is a pure function over SwiftData. Easy wins live here.
  • Orbion/AI/ - Foundation Models prompts. Add a new generator, hook it into the relevant tab.
  • OrbionTests/ - fixture-free Swift Testing suites. Add a test, run with the command above.

Open an issue first for anything bigger than a small fix - Orbion has a deliberate scope (see DECISIONS) and PRs that broaden the product without a discussion will likely bounce.

Packages

 
 
 

Contributors