Bengal transforms Markdown files into structured, validated documentation sites with rich directives, cross-references, and automated validation.
What Do You Need?
Content Organization
Pages, sections, and bundles explained
Content Authoring
Markdown, MyST directives, and rich content
Content Collections
Validate frontmatter with typed schemas
Content Sources
Fetch content from external sources
Analysis
Site structure analysis tools
Content Reuse
Snippets, data files, and DRY patterns
Versioned Documentation
Serve multiple versions of your documentation from a single site
Validation
Content validation and health checks
How Content Flows
flowchart LR
subgraph Sources
A[Local .md files]
B[GitHub repos ⚡]
C[Notion/APIs ⚡]
end
subgraph Processing
D[Discovery]
E[Frontmatter Parsing]
F[MyST Directives]
G[Cross-References]
end
subgraph Output
H[HTML Pages]
end
A --> D
B --> D
C --> D
D --> E
E --> F
F --> G
G --> H
Note
⚡ Remote sources require optional dependencies. Install withpip install bengal[all-sources] or individually: bengal[github], bengal[notion], bengal[rest].
Key Features
| Feature | Description |
|---|---|
| Component Model | type, variant, and propsdefine page identity, appearance, and data |
| MyST Directives | Tabs, cards, admonitions, code blocks, and 60+ directives |
| Cross-References | [[path]]syntax with O(1) lookups and auto-title resolution |
| Validation | bengal validatechecks links, directives, and frontmatter |
| Graph Analysis | bengal graph reportfinds orphan pages and suggests links |
Tip
New to Bengal? Start with Organization to understand how files become pages, then explore Authoring for MyST syntax.
Working on a larger site? Use Analysis to optimize internal linking and Validation for automated quality checks.