Documentation
Everlock brings sites, Git, mail, DNS, registries, calendars, contacts, and other self-hosted services together in one system. This documentation explains how those parts work and how to use them.
If you want a first setup, start with Guides. If you want to understand a specific service, open the matching backend page below.
Start here
| Page | Why to read it |
|---|---|
| Architecture | The big-picture split between frontends, backends, and shared primitives |
| Deployment | How to run Everlock — the downloaded binary standalone or as a systemd service (recommended); Docker for container-only platforms |
| Server settings | The runtime-tunable settings behind /server settings — keys, defaults, and precedence |
| Frontends | How SSH, HTTP, DNS, SMTP, IMAP, and mDNS behave as transports |
| Backends | The backend modules, what each one serves, and how instances are configured |
| Primitives | The small shared building blocks reused across the system |
| Versioned storage | The history-keeping store primitive behind sites, mail, calendars, and the vault |
Backend families
Each backend page starts with an overview, followed by reference pages and setup guides for that service.
-
Sites — Static and Markdown site hosting over HTTP
- Getting started: Markdown site
- Getting started: HTML site
- Directory structure
- Writing and customizing templates
- Taxonomies and tag pages
- Cross-linking pages with all_pages
- Running multiple sites
- Publishing over public HTTPS
- Private sites and access grants
- Per-site access log
- Local preview and build workflow
- site.toml configuration reference
- Downloads and redirects
- This site on Everlock
-
Git — Git repositories, SSH interaction, and repository persistence
-
Users, groups, and access control — The unified identity and permission model
-
Images — Image and media serving over HTTP, powered by the embedded apimeister-photos (ami) engine
-
Admin — Operator-facing admin flows over SSH, HTTP, and MCP
-
AI — Embedded AI prompting through the admin SSH session, and image captioning shared with the image backend, all on the self-developed gguf-runner engine
-
DNS — Authoritative DNS and derived records from Everlock services
-
OCI — OCI registry backend over HTTP, powered by the embedded apimeister-registry engine
-
Mail — SMTP receive and submission, IMAP read/write access, rules-based storage, and forwarding
-
Calendar — CalDAV calendars with Everlock auth and versioned storage
-
Contacts — CardDAV contacts with Everlock auth and versioned storage
-
OAuth — OAuth 2 / OIDC token issuance
-
Vault — Bitwarden-compatible, end-to-end-encrypted password manager with versioned storage
Troubleshooting
- Known issues — Errors we've hit ourselves, each with the fix and why it works