1.8 KiB
Atlas
Atlas is the documentation system. It turns structured data into browsable documentation.
Mapeando el recorrido -- mapping the journey.
Components
Atlas has three components:
| Component | Purpose |
|---|---|
| Books | Documentation libraries. Standalone HTML or template-generated. |
| Templates | Documentation patterns. Define how content is structured and rendered. |
| Depots | Data storage. Connect templates to actual content. |
A book can be standalone -- just HTML files served directly. Or it can be template-backed, where a template defines the structure and a depot provides the data.
How It Works
Atlas runs as a FastAPI app inside soleprint. It serves books at /book/{slug}/, fetches data from the soleprint hub, and renders content using Jinja2 templates or static HTML.
Books are registered in books.json. Templates and depots connect through the book's directory structure.
Room-Specific Books
Core books live in soleprint/atlas/books/. Room-specific books live in cfg/<room>/atlas/books/.
At build time, room-specific books are merged into the output:
soleprint/atlas/books/ # Core books (all rooms)
cfg/amar/atlas/books/ # Amar-specific books
↓ build.py
gen/amar/soleprint/atlas/books/ # Merged output
Core books ship with every room. Room books add to or override them. The build copies the core first, then overlays the room-specific content.
Data Templates
Template data files live in cfg/<room>/data/template/. These define the structure that depot content must follow.
Current State
| Component | Item | Status |
|---|---|---|
| Book | Feature Flow Pipeline | ready |
| Template | Feature Form | ready |
| Depot | Feature Forms | ready |