Getting Started
A short overview of the project, core directories, common commands, and the config areas most people need first.
Foundry is a Markdown-first CMS written in Go. Here you can find the project docs, the
CLI contract, and the latest HTML coverage report generated from main.
All the documentation you'll need to deploy Foundry, create new plugins, themes, and more.
A short overview of the project, core directories, common commands, and the config areas most people need first.
A practical map of the runtime flow and the packages that matter most when you start reading or changing the code.
A full reference for content/config/site.yaml, including every config
group, every supported key, and how each setting is used.
The official Admin SDK and Frontend SDK, their capability model, public API surfaces, and example usage.
How to build a plugin, define metadata, register hooks, sync generated imports, and validate the result.
How to scaffold a theme, structure layouts and partials, satisfy the slot contract, and validate the finished package.
The CLI UX contract, including command wording, output conventions, validation scope, and mutation guidance.
The HTML coverage report is generated on pushes to main and published
into this site by CI.
Pages and posts live in files with frontmatter, version cleanly in Git, and can be extended with taxonomies, fields, and language-aware routing.
Rendering lives in themes and extension logic lives in plugins, with explicit hook points, a validated slot contract, and generated plugin registration.
Admin frontends, future React admin implementations, plugin UIs, and JS-powered themes can target stable Foundry SDKs instead of private fetch logic.
The dependency graph tracks taxonomy outputs as well as document outputs, which improves incremental rebuild targeting.
The admin surface supports filesystem-backed users, idle-expiring browser sessions, themeable admin UI assets, structured frontmatter editing, restore-preview workflows, audit logs, a command palette, a runtime/debug dashboard with authenticated pprof access, raw HTML handling that stays config-controlled, and preview/admin serving with explicit timeouts.