1 System Overview
Cordy edited this page 2026-08-25 12:34:28 +00:00

swisscairn.ch + license server — system overview

How the site and the license server fit together. The pages in this repo (index, enter, account, docs, reset) are the browser box on the left; everything behind them is the cairn-license-server on the same Swiss VPS.

swisscairn system overview

Reading the diagram

  • Customer browser — the static pages served from swisscairn.ch (behind the pre-launch Caddy gate until launch, #26).
  • Sign-in providers — Google and Microsoft OAuth from enter.html.
  • Paddle — the checkout overlay opens from account.html; webhooks reach the license server, not the browser.
  • Caddy — TLS, static pages, and the gate.
  • cairn-license-server — accounts, Ed25519 license issuance, Paddle webhook, monthly check-in API, cancel / seats / receipts, SMTP mail.
  • SQLite — licenses, accounts, orgs.
  • Customer's Cairn instance — where the customer pastes the license key; it verifies offline and checks in monthly.

The diagram source lives in the license-server repo (docs/swisscairn-system.svg), the canonical backend. Full backend detail: the license-server wiki "System Overview" and Wiki.js ADR-0001 / ADR-0002.