# Core Architecture

URL: /bengal/docs/reference/architecture/core/
Section: core
Description: Data models and build coordination

---

> For a complete page index, fetch /bengal/llms.txt.

Foundational data models and build coordination for Bengal's static site generation.

Component
Responsibility
Module

Site
Central container, holds all content
`bengal/core/site/`

Page
Single content page with metadata
`bengal/core/page/`

Section
Directory container, holds children
`bengal/core/section/`

Asset
Static file with processing metadata
`bengal/core/asset/`

## Design Principles

- No God Objects: Each class has single responsibility (Site uses 7 focused mixins)

- Passive Core: Core models (PageCore, Section) are data-only; Site and Asset provide I/O convenience APIs that orchestrators coordinate

- Composition over Inheritance: BuildContext passes services between build phases

- Immutable PageCore: PageCore uses`frozen=True`for thread-safety and cache integrity (Python 3.14t compatible)

## In This Section

Topic
Description

Cache (cache/)
Build cache system with Zstandard compression

Content Types (content-types/)
Strategy pattern for type-specific behavior

Data Flow (data-flow/)
How data moves through the build pipeline

Object Model (object-model/)
Core data structures and relationships

Orchestration (orchestration/)
Build phase coordination

Pipeline (pipeline/)
Rendering pipeline architecture

Seealso

Design Principles (../design-principles/) — Full architectural guidelines

## In This Section

Build Cache (/bengal/docs/reference/architecture/core/cache/)

How Bengal caches builds for incremental rebuilds

Build Orchestration (/bengal/docs/reference/architecture/core/orchestration/)

How Bengal coordinates builds through 21 phases

Build Pipeline (/bengal/docs/reference/architecture/core/pipeline/)

How Bengal's build pipeline processes content through orchestrators

Content Type Strategies (/bengal/docs/reference/architecture/core/content-types/)

Strategy pattern for content type-specific behavior (sorting, templates, pagination)

Data Flow (/bengal/docs/reference/architecture/core/data-flow/)

How data moves through the build pipeline

Object Model (/bengal/docs/reference/architecture/core/object-model/)

Site, Page, Section, and Asset data models.
