Check off all 7 plan verification items with results. Write retrospective covering what went well (phased approach, source verification, CHALLENGE decisions), surprises (sketch false positives, extra Sukr instances, existing Tera link), process observations (CORE granularity, cross-phase deps, tech debt tracking), and intentional deferrals (G2, G5, security.md mixed quadrants).
sukr
Minimal static site compiler — suckless, Rust, zero JS.
sukr transforms Markdown content into high-performance static HTML. No bloated runtimes, no client-side JavaScript, just clean output.
Why sukr?
Most static site generators punt rich content to the browser. sukr doesn't.
- Tree-sitter syntax highlighting — Proper parsing, not regex. Supports language injection (Nix shells, HTML scripts).
- Build-time math — KaTeX renders LaTeX to static HTML. No 300KB JavaScript bundle.
- Build-time diagrams — Mermaid compiles to inline SVG. Diagrams load instantly.
- Tera templates — Customize layouts without recompiling.
- Monorepo support — Multiple sites via
-cflag.
See the full feature comparison with Zola, Hugo, and Eleventy.
Quick Start
cargo build --release
sukr # Build with ./site.toml
sukr -c docs/site.toml # Custom config (monorepo)
See the Getting Started guide for installation and first-site setup, Configuration for site.toml options, and Content Organization for directory layout.
Security
sukr processes content at build time only — there is no runtime attack surface.
- Untrusted: Markdown content, frontmatter, third-party templates
- Trusted: The compiled sukr binary, Tree-sitter grammars
Raw HTML in Markdown is passed through per CommonMark spec — review content from untrusted sources before building. Templates use Tera's auto-escaping by default.
For deployment security (CSP headers, platform configs), see the Security docs.
Documentation
Full documentation at sukr.io (built with sukr).
License
MIT
