This documentation is also published as Markdown for efficient machine reading: the whole site is indexed at /llms.txt, and every page has a clean Markdown copy under /_llms/. These are generated from the same source and cost far fewer tokens to read than this rendered HTML.

Skip to main content Skip to navigation

BlogFrontMatter Pennington.FrontMatter

Core-library front matter for blog posts on bare AddPennington hosts. Carries Date, Author, and Series alongside the IFrontMatter defaults, and implements IFrontMatter and ITaggable. Not the record bound by AddBlogSite — see BlogSiteFrontMatter in the Pennington.BlogSite package for that.

Properties

Author string
Optional author name rendered in post bylines and feeds.
Date DateTime?
Publication date surfaced in feeds and sitemaps. Also drives scheduled publishing: when this is set to a moment after the build clock, the page is excluded from build output (same dev-vs-build behavior as IsDraft) until the clock catches up.
Description string
Short summary used in meta descriptions, OpenGraph tags, and listings.
IsDraft bool
True when the page is a draft and should be excluded from builds.
Llms bool
True when the page should be included in llms.txt output.
Search bool
True when the page should be included in the search index.
SearchOnly bool
When true, the page is included in indexing channels (search, llms.txt) but excluded from the rendered navigation tree. Useful for FAQ entries, glossary terms, or other content that should be discoverable by search but should not clutter the sidebar.
Series string
Optional series identifier used to group related posts together.
Tags string[]
Tags applied to this content.
Title string
Page title rendered in the browser tab, navigation, and OpenGraph tags.
Uid string
Stable cross-reference identifier used by xref links.

Pennington.FrontMatter.BlogFrontMatter

namespace Pennington.FrontMatter;

/// Core-library front matter for blog posts on bare AddPennington hosts. Carries Date, Author, and Series alongside the IFrontMatter defaults, and implements IFrontMatter and ITaggable. Not the record bound by AddBlogSite — see BlogSiteFrontMatter in the Pennington.BlogSite package for that.
public record BlogFrontMatter
{
    /// Optional author name rendered in post bylines and feeds.
    
public string Author { get; set; }
/// Publication date surfaced in feeds and sitemaps. Also drives scheduled publishing: when this is set to a moment after the build clock, the page is excluded from build output (same dev-vs-build behavior as IsDraft) until the clock catches up.
public DateTime? Date { get; set; }
/// Short summary used in meta descriptions, OpenGraph tags, and listings.
public string Description { get; set; }
/// True when the page is a draft and should be excluded from builds.
public bool IsDraft { get; set; }
/// True when the page should be included in llms.txt output.
public bool Llms { get; set; }
/// True when the page should be included in the search index.
public bool Search { get; set; }
/// When true, the page is included in indexing channels (search, llms.txt) but excluded from the rendered navigation tree. Useful for FAQ entries, glossary terms, or other content that should be discoverable by search but should not clutter the sidebar.
public bool SearchOnly { get; set; }
/// Optional series identifier used to group related posts together.
public string Series { get; set; }
/// Tags applied to this content.
public string[] Tags { get; set; }
/// Page title rendered in the browser tab, navigation, and OpenGraph tags.
public string Title { get; set; }
/// Stable cross-reference identifier used by xref links.
public string Uid { get; set; }
}