Documentation

Ten pages in three groups: using Kern, running a server, and building on it. If you don't know where to start, start with help.

Using Kern

Help

Installing Kern on Windows and Linux, the shortcuts worth knowing, where your data is kept, backups and export, the single switch that turns off everything online, Kern Cloud accounts and workspaces, what syncs and what never leaves your computer, share links, calendar feeds, and the problems people hit most often.

Start here if you are using Kern and something isn't clear.

Streams

A stream is an address your website or services send to. Each submission it accepts becomes a task, an inbox item or a GitHub issue in a space — a "Report a bug" button, a feedback form, a webhook or a failing CI job, dropped straight into your plan.

Covers sending submissions, responses and errors, authentication with a secret or a signature, spam and rate limits, field validation, templates, the delivery log, limits, worked examples and troubleshooting.

Running a server

Kern Cloud is optional, and you don't have to use the public one. The server is open source and the same code either way. Four pages cover it.

Self-hosting

The guide, from nothing to a server other people can safely use: choosing a shape, the installer, Docker and bare Node, a first-run checklist, TLS with Caddy or nginx, pointing Kern at it, who may sign up, mail, the security model, health checks, backups, upgrades and uninstalling.

Configuration

Every setting, grouped: addresses, database, secrets, registration, management, mail, limits and quotas. Which four are required, which can be changed without a restart, and four worked examples — one person on one machine, a team on a company domain, invitation-only, and tight on disk.

kernctl

The command reference: health and repairs, people, spaces, invitations, streams, live settings, notices, management tokens, pairing Kern Platform, backups and the service itself — plus where it finds its token, how to use it over an SSH tunnel, and what the exit codes mean.

Troubleshooting

Nineteen failures people actually hit, each with the symptom, why it happens, one command to confirm it, and what to change. Connections and TLS, the WebSocket mistake that breaks live collaboration quietly, mail, sign-up, management access, storage, restores and upgrades.

Building on Kern

Protocol

How things talk to a Kern server: the instance handshake and what the protocol number guarantees, how a client chooses a server and why that isn't an ordinary setting, signing in, how sync merges field-level patches, what the realtime socket carries, and the separate management API with its two gates. Read this before changing either side.

API reference

Every route a server serves: accounts and sessions, workspaces, members and invitations, sync, whiteboard images, streams, share links, calendar feeds, the realtime socket and the public endpoints.

Development

Building Kern from source: requirements and commands, the architecture, the data layer and migrations, backups and export, sync internals, privacy and permissions, passkeys and locked projects, releases and in-app updates, and how to work on the server.

Performance

Measured startup, idle memory, data operations on 5,000 tasks, bundle sizes and whiteboard frame times for a release build — with the method, and what wasn't measured.

Quick answers

QuestionWhere
How do I install Kern?Help → Installing
Where is my data kept?Help → Where your data lives
How do I get my work out of Kern?Help → Backups and export
How do I stop Kern going online at all?Help → Turning off everything online
What actually syncs to the cloud?Help → What syncs
How do I share a note or a project?Help → Sharing and calendars
Why don't I see other people's cursors?Troubleshooting → No live collaboration
How do I turn a form into tasks?Streams → Quick start
How do I secure a stream?Streams → Authentication
How do I run the server myself?Self-hosting → Installing
What do I do straight after installing?Self-hosting → First run
How do I put TLS in front of it?Self-hosting → TLS
How do I point Kern at my own server?Self-hosting → Pointing Kern at it
Who is allowed to sign up?Self-hosting → Who may sign up
Nobody gets verification emailsTroubleshooting → Nobody gets codes
What does this setting do?Configuration
What can kernctl do?kernctl
How do I back the server up?Self-hosting → Backups
How do I upgrade safely?Self-hosting → Upgrading
Is a management token a way to read my notes?Self-hosting → The security model

Elsewhere