Classes
BlogPost
dataclass
Standard schema for blog posts.
Required:
title: Post title (displayed in listings and page he…
BlogPost
dataclass Standard schema for blog posts.
Required:
title: Post title (displayed in listings and page header)
date: Publication date (used for sorting and display)
Optional:
author: Post author (defaults to "Anonymous")
tags: List of tags for categorization
draft: If True, page excluded from production builds
description: Short description for meta tags and listings
image: Featured image path (relative to assets or absolute URL)
excerpt: Manual excerpt (auto-generated from content if not set)
Example frontmatter:
---
title: Getting Started with Bengal
date: 2025-01-15
author: Jane Doe
tags: [tutorial, beginner]
description: Learn how to build your first Bengal site
---
Attributes
| Name | Type | Description |
|---|---|---|
title |
str |
|
date |
datetime |
|
author |
str |
|
tags |
list[str] |
|
draft |
bool |
|
description |
str | None |
|
image |
str | None |
|
excerpt |
str | None |
DocPage
dataclass
Standard schema for documentation pages.
Required:
title: Page title
Optional:
weight: So…
DocPage
dataclass Standard schema for documentation pages.
Required:
title: Page title
Optional:
weight: Sort order within section (lower = earlier, default 0)
category: Category for grouping in navigation
tags: List of tags for cross-referencing
toc: Whether to show table of contents (default True)
description: Page description for meta tags
deprecated: Mark page as deprecated (shows warning banner)
since: Version when feature was introduced (e.g., "1.2.0")
Example frontmatter:
---
title: Configuration Reference
weight: 10
category: Reference
toc: true
---
Attributes
| Name | Type | Description |
|---|---|---|
title |
str |
|
weight |
int |
|
category |
str | None |
|
tags |
list[str] |
|
toc |
bool |
|
description |
str | None |
|
deprecated |
bool |
|
since |
str | None |
APIReference
dataclass
Standard schema for API reference documentation.
Required:
title: API endpoint or method name
…
APIReference
dataclass Standard schema for API reference documentation.
Required:
title: API endpoint or method name
endpoint: API endpoint path (e.g., "/api/v1/users")
Optional:
method: HTTP method (default "GET")
version: API version (default "v1")
deprecated: Mark endpoint as deprecated
auth_required: Whether authentication is required (default True)
rate_limit: Rate limit description (e.g., "100 req/min")
description: Endpoint description
Example frontmatter:
---
title: List Users
endpoint: /api/v1/users
method: GET
version: v1
auth_required: true
rate_limit: 100 req/min
---
Attributes
| Name | Type | Description |
|---|---|---|
title |
str |
|
endpoint |
str |
|
method |
str |
|
version |
str |
|
deprecated |
bool |
|
auth_required |
bool |
|
rate_limit |
str | None |
|
description |
str | None |
Changelog
dataclass
Standard schema for changelog entries.
Required:
title: Release title (e.g., "v1.2.0" or "Vers…
Changelog
dataclass Standard schema for changelog entries.
Required:
title: Release title (e.g., "v1.2.0" or "Version 1.2.0")
date: Release date
Optional:
version: Semantic version string
breaking: Whether this release has breaking changes
draft: If True, not published yet
summary: Short release summary
Example frontmatter:
---
title: Version 1.2.0
date: 2025-01-15
version: 1.2.0
breaking: false
summary: New features and bug fixes
---
Attributes
| Name | Type | Description |
|---|---|---|
title |
str |
|
date |
datetime |
|
version |
str | None |
|
breaking |
bool |
|
draft |
bool |
|
summary |
str | None |
Tutorial
dataclass
Standard schema for tutorial/guide pages.
Required:
title: Tutorial title
Optional:
diffi…
Tutorial
dataclass Standard schema for tutorial/guide pages.
Required:
title: Tutorial title
Optional:
difficulty: Skill level (beginner, intermediate, advanced)
duration: Estimated completion time (e.g., "30 minutes")
prerequisites: List of prerequisite knowledge/tutorials
tags: List of tags
series: Name of tutorial series this belongs to
order: Order within series (1, 2, 3, ...)
Example frontmatter:
---
title: Building Your First Site
difficulty: beginner
duration: 30 minutes
prerequisites:
- Python basics
Command line familiarity series: Getting Started order: 1
Attributes
| Name | Type | Description |
|---|---|---|
title |
str |
|
difficulty |
str | None |
|
duration |
str | None |
|
prerequisites |
list[str] |
|
tags |
list[str] |
|
series |
str | None |
|
order |
int | None |