# EPPP — PersonalBlog: Architecture & Programme documentation This directory holds the architecture and programme documentation for **EPPP** (Extensible Personal Publishing Platform) as built in `Fabrika/PersonalBlog`. > **Why here and not the Gitea wiki:** the Gitea wiki REST API on this instance (Gitea 1.23.7) is broken — its read path hardcodes branch `master` while wiki writes go to `main` (the instance default). Until the instance is patched or `DEFAULT_BRANCH` is set to `master`, the wiki feature cannot be created/read programmatically. These pages are the same content, kept in-repo so they are versioned and reviewable. **Source of truth:** `EPPP/docs/EPPP_Architecture_v1.1_Product_Programme.md` (Architecture v1.1, 2026-08-27). ## Contents - [Architecture](architecture.md) — executive decision, modular monolith, dependency direction, core ownership - [Technology stack](technology-stack.md) — runtime stack, golden tuple, container pins - [Domain model](domain-model.md) — Site/ContentEntry/ContentRevision, block document, `core.markdown`, page composition - [Extension architecture](extension-architecture.md) — manifest/context, lifecycle, trust model - [Theme architecture](theme-architecture.md) — theme contract, tokens, renderer slots, naming - [Rich content & media](rich-content-and-media.md) — media pipeline, embeds, charts/diagrams, metadata - [Security & operations](security-and-operations.md) — security baseline, auth, Docker/Compose, backup/restore - [Engineering standards](engineering-standards.md) — TS config, validation, test strategy, CI/CD - [ADR index](adr-index.md) — ADR-001 … ADR-032 - [Programme](programme.md) — initiatives, hierarchy, numbering, Definition of Ready/Done - [Sprints & roadmap](sprints-and-roadmap.md) — sprint map, roadmap, v0.2/v0.3, deferred decisions - [Board & workflow](board-and-workflow.md) — workflow labels, milestones, board setup, numbering reconciliation ## Work tracking Every initiative (`I-*`), epic (`E*`), story (`E*-S*`) and card (`E*-S*-T*`) is a **Gitea issue** in this repository, labelled with a `kind/*` label and a workflow `status/*` label, and assigned to a sprint milestone. See [board-and-workflow.md](board-and-workflow.md).