Page:
Architecture
No results
1
Architecture
Cordy edited this page 2026-08-25 12:34:35 +00:00
Table of Contents
Cairn — self-hosted instance architecture
How a customer's Cairn deployment is put together today: one binary, one config, on their own hardware, against their own storage and identity provider.
Reading the diagram
- Clients — the web UI (browser) and WebDAV clients (Finder, rclone, …) talk to cairnd over HTTPS.
- cairnd — a single Go binary: serves the web UI + WebDAV, does seat accounting, verifies its Ed25519 license offline, and can peer with other instances. No database, no phone-home in the free tier.
- cairn.json — the one config file: which storage backend, which identity provider, and the license key.
- Identity provider — the customer's own OIDC or LDAP, plus local users and app-passwords.
- Storage backend — a filesystem or S3 bucket the customer owns; Cairn lays out
homes/,spaces/, and runtime state under.cairn/. - swisscairn license server — a licensed instance checks in monthly (outbound only, pull-only); free up to 50 users with no key at all.
- Peer Cairn — instance-to-instance transfer (peering): per-peer keys exchanged out of band, delivery into the recipient's inbox.
- Customer infrastructure — everything inside the boundary runs on the customer's own hardware; sovereign by design.
Source SVG: docs/cairn-instance.svg in this repo. Living design detail: ARCHITECTURE.md, IMPLEMENTED-PEERING.md, and the repo wiki Home.