Pennington 0.1.4
dotnet add package Pennington --version 0.1.4
NuGet\Install-Package Pennington -Version 0.1.4
<PackageReference Include="Pennington" Version="0.1.4" />
<PackageVersion Include="Pennington" Version="0.1.4" />
<PackageReference Include="Pennington" />
paket add Pennington --version 0.1.4
#r "nuget: Pennington, 0.1.4"
#:package Pennington@0.1.4
#addin nuget:?package=Pennington&version=0.1.4
#tool nuget:?package=Pennington&version=0.1.4
Pennington
A content engine for .NET that turns Markdown into static sites, documentation portals, and blogs.
Features
- Markdown processing with front matter, syntax highlighting, tabbed content, and GitHub-style alerts
- Static site generation with automatic navigation and sitemaps (RSS feeds ship with the DocSite blog folder and the BlogSite template)
- Razor component library for navigation trees, code blocks, badges, and cards
- Utility-first CSS via MonorailCSS integration
- Documentation site template with built-in layouts, search, and content areas
- Blog site template for content-driven blogs
Mental model
Pennington is an ASP.NET content engine. In development it serves your site as a normal web app; in build mode it crawls that same app in process and writes the responses as static files.
There are three entry points:
| Package | Use it when |
|---|---|
Pennington.DocSite |
You want a documentation site with sidebar navigation, search, styling, and static output wired for you. |
Pennington.BlogSite |
You want a content-driven blog as the whole site. |
Pennington |
You want the lower-level engine and will bring your own layout, routing, and styling. |
Most documentation projects should start with Pennington.DocSite. Drop down to Pennington when the template shape no longer fits.
Installation
Pennington targets .NET 10 and .NET 11, and uses preview C# language features.
For the DocSite quick start:
dotnet add package Pennington.DocSite
Additional packages for specific features:
dotnet add package Pennington # Core content engine
dotnet add package Pennington.UI # Razor components
dotnet add package Pennington.MonorailCss # Utility-first CSS
dotnet add package Pennington.BlogSite # Blog site template
Quick Start
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddDocSite(() => new DocSiteOptions
{
SiteTitle = "My Docs",
Description = "Project documentation",
});
var app = builder.Build();
app.UseDocSite();
await app.RunDocSiteAsync(args);
Add Markdown files to a Content/ directory with YAML front matter:
---
title: Getting Started
order: 1
---
# Welcome
Your documentation content goes here.
Build a static site with:
dotnet run -- build
License
MIT
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. net11.0 is compatible. |
-
net10.0
- AngleSharp (>= 1.5.1)
- DeweySearch (>= 0.1.2)
- Markdig (>= 1.3.0)
- Mdazor (>= 0.0.0-alpha.0.17)
- Microsoft.AspNetCore.TestHost (>= 10.0.8)
- SharpYaml (>= 3.10.0)
- System.CommandLine (>= 2.0.0)
- System.ServiceModel.Syndication (>= 10.0.8)
- Testably.Abstractions (>= 10.2.0)
- TextMateSharp (>= 2.0.4)
- TextMateSharp.Grammars (>= 2.0.4)
-
net11.0
- AngleSharp (>= 1.5.1)
- DeweySearch (>= 0.1.2)
- Markdig (>= 1.3.0)
- Mdazor (>= 0.0.0-alpha.0.17)
- Microsoft.AspNetCore.TestHost (>= 10.0.8)
- SharpYaml (>= 3.10.0)
- System.CommandLine (>= 2.0.0)
- System.ServiceModel.Syndication (>= 10.0.8)
- Testably.Abstractions (>= 10.2.0)
- TextMateSharp (>= 2.0.4)
- TextMateSharp.Grammars (>= 2.0.4)
NuGet packages (10)
Showing the top 5 NuGet packages that depend on Pennington:
| Package | Downloads |
|---|---|
|
Pennington.UI
Razor component library for Pennington — navigation, code blocks, and content display |
|
|
Pennington.MonorailCss
MonorailCSS integration for Pennington providing utility-first CSS generation |
|
|
Pennington.DocSite
Documentation site template for Pennington with layouts, pages, and content resolution |
|
|
Pennington.BlogSite
Blog site template for Pennington |
|
|
Pennington.ApiMetadata.Reflection
Reflection-backed IApiMetadataProvider for Pennington — reads a compiled assembly plus its companion xmldoc XML file and surfaces them through the neutral API-metadata abstractions. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.4 | 70 | 6/17/2026 |
| 0.1.4-alpha.0.2 | 38 | 6/17/2026 |
| 0.1.3 | 86 | 6/17/2026 |
| 0.1.3-alpha.0.3 | 45 | 6/17/2026 |
| 0.1.3-alpha.0.2 | 41 | 6/17/2026 |
| 0.1.3-alpha.0.1 | 45 | 6/16/2026 |
| 0.1.2-alpha.0.3 | 44 | 6/16/2026 |
| 0.1.2-alpha.0.1 | 45 | 6/16/2026 |
| 0.1.1 | 92 | 6/16/2026 |
| 0.1.0 | 101 | 6/16/2026 |
| 0.1.0-alpha.0.321 | 48 | 6/15/2026 |
| 0.1.0-alpha.0.319 | 46 | 6/15/2026 |
| 0.1.0-alpha.0.318 | 54 | 6/13/2026 |
| 0.1.0-alpha.0.317 | 43 | 6/13/2026 |
| 0.1.0-alpha.0.316 | 44 | 6/13/2026 |
| 0.1.0-alpha.0.314 | 46 | 6/13/2026 |
| 0.1.0-alpha.0.313 | 50 | 6/13/2026 |
| 0.1.0-alpha.0.312 | 45 | 6/12/2026 |
| 0.1.0-alpha.0.311 | 44 | 6/12/2026 |
| 0.1.0-alpha.0.309 | 46 | 6/12/2026 |