Files
soleprint/docs/data/en/atlas.md
2026-05-06 12:04:19 -03:00

55 lines
1.9 KiB
Markdown

# 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/<room>/atlas/books/ # Room-specific books
↓ build.py
gen/<room>/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 |
See [Books](atlas-books.md) and [Templates](atlas-templates.md) for details on each pattern.