Licence & editions
Astroworx Starship ships as two editions from one codebase, and a distributed (compiled) build carries a licence gate. This topic explains what edition you're running, how the supporter licence works, and what the Settings → Licence tab shows you. None of this applies when you run from source — a source/dev run is never gated.
The two editions
The same code base builds two products, and the build self-identifies by which modules are present (title bar, the About page, and /api/version) — there's no manual flag to keep in sync, and the UI automatically hides whatever isn't in the build.
- Astroworx Starship (public) — the standard edition. Everything documented in
this help is in it, unless a topic explicitly says otherwise.
- Astroworx Starship Professional — adds telescope collimation, the
research module (Navigator), the rental web dashboard, and user booking. These four are compiled out of the public build (not merely hidden), so the public edition never ships that code.
Everything else — Console, Sequencer, Scheduler, Blockscript, Auto Flat, cooling, guiding, plate-solving, Dome, Sky Atlas, Skyhunter, alerts, and the rest — is fully available in both editions.
The offline licence gate (compiled builds)
A compiled Starship build refuses to start without a license.key that is bound to that machine and carries an expiry date. This is what lets a build be distributed safely: a copied build won't run on another machine, and every licence stops working on its expiry day.
The gate is offline and cryptographic — the build embeds only a public key and verifies the signed licence locally (a vendored Ed25519 / RFC 8032 implementation), so a licence can't be forged or transplanted to another computer. There's nothing to phone home to for the gate itself; verification happens on your machine.
The online supporter licence
For the public edition, an ongoing supporter licence keeps the build licensed month to month, managed entirely in the app:
- Subscribe (through the website) and you receive an activation key.
- In Settings → Licence, paste the activation key and click Activate. This
computer registers with the licence server and receives a fresh, machine-bound, signed licence.
- In the background Starship refreshes about once a day, trading your
{activation_key, machine_id} for a renewed licence. A best-effort refresh also runs once at startup before the gate, so a just-renewed subscription unlocks immediately.
Offline-safe: a flaky network never ends a night
If Starship can't reach the licence server, it keeps the cached licence and keeps running until that licence's own expiry — your paid period plus a grace window. The daily refresh is a top-up, not a leash: a dropped connection, a DNS hiccup, or an observatory with no internet won't stop an in-progress night. Only an actually-expired licence (past its paid period and the grace) fails the gate.
The Settings → Licence tab
The Licence tab (a dedicated left-nav entry) shows, at a glance:
- Your edition (Astroworx Starship or Professional) and current **licence
status** — licensed-to, valid-through, and days left.
- This computer's licence ID — the machine id the licence is bound to (what you
quote when you activate or ask for support).
- An activation-key field with Activate and Refresh now buttons — paste
the key you were issued to activate, or force an immediate refresh instead of waiting for the daily cycle.
Under the hood
The client lives in core/licensing/client.py; the endpoints are /api/license/status, /api/license/activate, and /api/license/refresh, driven by a daily refresh thread. The cached licence is stored at ~/.starship/license.key and verified offline by the same signed-licence gate described above.
Notes
- Running from source is never gated — the licence gate and the supporter
refresh only matter for a distributed, compiled build.
- The licence binds to the machine, so moving to a new computer means
re-activating there (its machine id differs).
- The gate is about distribution, not about locking you out of your own data:
your config.toml, images, and databases are plain files on your disk regardless of licence state.