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

BookDefinition Pennington.Book

One book carved out of the site's table of contents. A book covers every page whose canonical path falls under RoutePrefix; the whole TOC when the prefix is /.

Properties

EffectiveSlug string
Effective output slug — Slug when set, otherwise derived from RoutePrefix.
NormalizedRoutePrefix string
Route prefix normalized to a leading + trailing slash (/tutorials/); / for the whole site.
RoutePrefix string
Canonical route prefix the book covers (for example /tutorials/, or / for the whole site).
Slug string
Optional slug for the output file (pdf/{slug}.pdf); defaults to the route prefix flattened to a slug.
Subtitle string
Optional cover subtitle; defaults to the site description for the whole-site book.
Title string
Book title, shown on the cover and the download link.

Constructors

BookDefinition

#
public BookDefinition(string Title, string RoutePrefix)

One book carved out of the site's table of contents. A book covers every page whose canonical path falls under RoutePrefix; the whole TOC when the prefix is /.

Parameters

Title string
Book title, shown on the cover and the download link.
RoutePrefix string
Canonical route prefix the book covers (for example /tutorials/, or / for the whole site).

Pennington.Book.BookDefinition

namespace Pennington.Book;

/// One book carved out of the site's table of contents. A book covers every page whose canonical path falls under RoutePrefix; the whole TOC when the prefix is /.
public record BookDefinition
{
    /// One book carved out of the site's table of contents. A book covers every page whose canonical path falls under RoutePrefix; the whole TOC when the prefix is /.
    
public BookDefinition(string Title, string RoutePrefix)
; /// Effective output slug — Slug when set, otherwise derived from RoutePrefix.
public string EffectiveSlug { get; }
/// Route prefix normalized to a leading + trailing slash (/tutorials/); / for the whole site.
public string NormalizedRoutePrefix { get; }
/// Canonical route prefix the book covers (for example /tutorials/, or / for the whole site).
public string RoutePrefix { get; set; }
/// Optional slug for the output file (pdf/{slug}.pdf); defaults to the route prefix flattened to a slug.
public string Slug { get; set; }
/// Optional cover subtitle; defaults to the site description for the whole-site book.
public string Subtitle { get; set; }
/// Book title, shown on the cover and the download link.
public string Title { get; set; }
}