Blog
Browse by tagMay 15, 2026
Your docs site can have a blog now
Drop a Content/blog folder into a DocSite and a blog lights up — index, post pages, browse-by-tag pages, an RSS feed, and a header link, with no Program.cs changes.
May 14, 2026
Data files and taxonomies
Two new building blocks — hot-reloading YAML/JSON datasets, and browse-by-field pages generated from any front-matter key.
May 13, 2026
Faster, smoother page navigation
The SPA engine got a refresh — a persistent sidebar and header that survive navigation, a progress bar for slow loads, and a synchronous swap that replaced the cross-fade.
May 7, 2026
Front matter that catches your typos
Misspell a front-matter key and the build now tells you — strict-mode parsing, an unknown-key diagnostic, and a warning when a code fence names a language Pennington doesn't know.
May 4, 2026
Built for LLMs — llms.txt support
Pennington generates an llms.txt index and clean markdown sidecars for every page, so AI agents can read your docs without crawling rendered HTML.
May 1, 2026
Catch broken links before your readers do
A new build-auditor pipeline surfaces broken links, unresolved references, and content overlap on two surfaces at once — the build report and the live dev overlay.
April 28, 2026
API reference, generated from your XML docs
Pennington now builds API reference pages straight from your assemblies' XML docs — one page per type, Stripe-style definition lists, inherited members and union cases included.
April 18, 2026
Start a new site with dotnet new
Three project templates — pennington, pennington-docs, and pennington-blog — get a site running with a single command.
April 17, 2026
Deploy your docs to GitHub Pages
A ready-made GitHub Actions workflow builds the static site and publishes it to GitHub Pages on every push to main.
April 15, 2026
A dev loop that keeps up
Edit a markdown file and the browser refreshes itself — WebSocket live reload, debounced file watching, and .cs hot reload for embedded code samples.
April 9, 2026
Pennington is on NuGet
The packages are public — full NuGet metadata, SourceLink and symbol packages, and a CI pipeline that publishes on every tagged release.
April 8, 2026
Documentation in every language
Localization is now a first-class part of the content engine — ambient locale context, automatic link rewriting, locale fallback, and ASP.NET integration.
April 7, 2026
Structured data and accessibility, on by default
Pennington sites now emit JSON-LD for rich search results, ship skip links and ARIA landmarks, and preload fonts to cut the flash of unstyled text.
April 6, 2026
A build report you can read, and a dev overlay that shows it
Every build now ends with a real report — broken links, unresolved references, diagnostics — and the dev server surfaces the same warnings live in the browser.
April 4, 2026
Introducing Pennington
A content engine for .NET — markdown, live code samples pulled from source, and ready-made documentation and blog templates.