- Renamed `02_architecture.md` to `02_components.md` to match the standard component page naming convention.
- Updated `docs/mkdocs.wiki.yml` to reflect renamed pages and fix navigation label acronym casing (GSDFC, MCP, MkDocs).
- Updated `index.md` to include the mandatory doc model blockquote, standardize section headers with emojis, and accurately map the `Documentation Structure` table to the navigation menu.
- Standardized all wiki pages (`01_overview.md`, `02_components.md`, `03_conventions.md`, `04_iterative_workflow.md`, and `05_development/*`) by:
- Adding horizontal rules (`---`) between major sections.
- Applying emoji-prefixed H2 headings for recognizable section types.
- Appending `## Related` or `## ➡️ Read Next` footers with standard relative cross-links.
- Adjusting H1 headers to match guide anatomy (e.g., `# Library Overview` on the overview page).
55 lines
1.4 KiB
Markdown
55 lines
1.4 KiB
Markdown
# Components
|
||
|
||
`docforge` is split into four horizontal layers. Everything flows top to
|
||
bottom through the CLI.
|
||
|
||
---
|
||
|
||
## 1. Loaders & Models
|
||
|
||
The `docforge/loaders` package wraps `griffe` to extract modules, functions,
|
||
classes, and Google-style docstring sections. Loaded data is normalized into
|
||
the object model under `docforge/models` (`Project`, `Module`, `DocObject`).
|
||
|
||
---
|
||
|
||
## 2. Navigation
|
||
|
||
`docforge/nav` parses `docforge.nav.yml` specs (`NavSpec`, `Resolver`, and the
|
||
MkDocs nav emitter) and, since the wiki kind, derives wiki navigation from the
|
||
file structure via `build_wiki_nav`.
|
||
|
||
---
|
||
|
||
## 3. Renderers
|
||
|
||
`docforge/renderers` turn model data into artifacts:
|
||
|
||
- `MkDocsRenderer` → `docs/lib/**` reference markdown
|
||
- `MCPRenderer` → `docs/mcp/**` structured documentation
|
||
|
||
---
|
||
|
||
## 4. Servers
|
||
|
||
`docforge/servers` serves generated artifacts over live protocols:
|
||
|
||
- `MCPServer` → serves a pre-generated `docs/mcp/**` bundle through MCP
|
||
resources (`docs://index`, `docs://nav`, `docs://modules/{module}`)
|
||
|
||
---
|
||
|
||
## 5. CLI
|
||
|
||
`docforge/cli` wires it all together:
|
||
|
||
- `commands.py` — the `build` command and its `--mkdocs` / `--api` / `--wiki`
|
||
/ `--mcp` modes
|
||
- `mkdocs_utils.py` — per-kind config generation (`docs/mkdocs.{lib,api,wiki}.yml`)
|
||
with navigation re-rooted to each kind's `docs_dir`
|
||
- `api_utils.py` — OpenAPI loading and API docs generation
|
||
|
||
---
|
||
|
||
## Related
|
||
- [01 – Overview](01_overview.md) · [03 – Conventions](03_conventions.md) |