96aa60d9e435995dab03f4753b9c9e470407510b
Introduce SiteManifest struct that aggregates all site content from a single discovery pass: - homepage: content/_index.md - sections: directories with _index.md - pages: top-level standalone .md files - posts: blog section items (sorted by date for feed) - nav: navigation menu items Add discover_pages() helper and 5 unit tests covering homepage, sections, pages, posts, and nav discovery. Not yet integrated into main.rs pipeline.
sukr
Minimal static site compiler — suckless, Rust, zero JS.
sukr transforms Markdown content into high-performance static HTML. No bloated runtimes, no unnecessary JavaScript, just clean output.
Features
- Build-time rendering — Syntax highlighting via Tree-sitter, no client JS
- Tera templates — Runtime customizable, no recompilation needed
- Convention over configuration — Add sections by creating directories
- Monorepo support — Multiple sites via
-cflag
Quick Start
# Build
cargo build --release
# Run (uses ./site.toml)
sukr
# Custom config (monorepo)
sukr -c sites/blog/site.toml
# Help
sukr --help
Configuration
Create site.toml:
title = "My Site"
author = "Your Name"
base_url = "https://example.com"
[paths] # All optional
content = "content" # default
output = "public" # default
static = "static" # default
templates = "templates" # default
Content Structure
content/
├── _index.md # Homepage
├── about.md # Standalone page → /about.html
└── blog/
├── _index.md # Section index → /blog/index.html
└── my-post.md # Post → /blog/my-post.html
License
MIT
Languages
Rust
68.7%
Scheme
19.1%
CSS
11.7%
Nix
0.5%
