Lunet - Fast, modular static site generator

A fast, modular static site generator.
Configuration is executable Scriban code - not YAML-only config.

dotnet tool install -g lunet

Requires the .NET 10 SDK

Scriban templating

Pages, layouts, and even config.scriban are full Scriban scripts - loops, conditionals, functions, and custom variables everywhere.

Configuration · Content & front matter

Themes & extensions

Install themes from any GitHub repo with a single line. A layered virtual filesystem lets you override any theme file at the same path.

Themes & extends · Extends module

SCSS, bundles & npm

Compile SCSS via the embedded Dart Sass compiler, bundle & minify CSS/JS, and fetch npm packages (Bootstrap, Font Awesome…) without a node_modules workflow.

SCSS · Bundles · Resources

RSS, sitemaps & search

Generate RSS feeds, sitemap.xml, robots.txt, and a client-side search index - all out of the box.

RSS · Sitemaps · Search

Live reload

Built-in dev server with file watcher. Edit a page and see changes in your browser instantly.

Server · Watcher

.NET API docs

Generate API reference pages directly from .NET projects or assemblies - a feature unique to Lunet.

API (.NET) · Logging API · CommandLine API · Terminal API

And more…

Taxonomies, menus, SEO/social cards, Google Analytics, Markdown via Markdig, data loading (YAML / JSON / TOML), URL pattern rules, automatic page summaries - all as small, composable modules.

Browse all modules

One-click deploy with GitHub Actions

Add a single workflow file to your repository and Lunet builds & deploys your site to GitHub Pages automatically - no build scripts needed.

Publishing with GitHub Actions