Architecture — managed middleware + one shared node

Linkiny runs as a single Go binary. Managed deployments add a thin “managed middleware” that routes each subdomain to its own store for auth + identity, while sharing one DB for spaces, entries, and federation state.

Why: running 10,000 Postgres clusters for 10,000 users is absurd. Running one SQLite database in WAL mode with per-user namespacing is cheap, fast, and auditable.

Public endpoints (/markets/, /blogs/, /channels/) render per-subdomain by filtering space.created_by against the node’s owner UUID. Same code path, different tenant.

Federation isn’t a bolted-on “bridge” — it’s the same space model extending across nodes. Every space has a read_mode and write_mode; public-read spaces appear on /api/v1/federation/discover and get fanned out to peers for search and discovery.

Write a comment