Table of contents
architecture: Architecture as editable documentation
This archived repository stores a home-infrastructure diagram in several formats. Its architecture is a documentation workflow: editable sources produce diagrams that can be opened or viewed without a running application.
- Languages
- 1Code breakdown
- Documented components
- 2Explore modules
- Source documents
- 1Read the instructions
Repository languagesHTML 100%1
Shares calculated from GitHub Linguist bytes.
| Language | % | Bytes |
|---|---|---|
| HTML | 704,499 |
1. Overview
1.1. Why it exists
Editable home-infrastructure diagrams preserved as PlantUML and draw.io sources, with HTML and image exports.
1.2. Best fit
Reading an archived infrastructure snapshot or editing its diagram sources to document a homelab.
2. Use cases
C4 PlantUML and draw.io diagrams of a home lab: Cloudflare, an OVH VPS, hypervisors, a NAS and services.
- View the v1 draw.io diagram
- ReaderDiagram renderers
architecture.drawio.html embeds the draw.io XML in the diagrams.net viewer script, with zoom, layers and lightbox; the README links it as v1.
- Render the v2 C4 diagram
- ReaderDiagram renderers
architecture.plantuml includes C4_Deployment, Font Awesome, OSA and Office icon sets; the README v2 link is an encoded render on the PlantUML server.
- Trace external access paths
- Reader
The Rel lines show users reaching Cloudflare over HTTPS, Cloudflare forwarding to the OVH VPS, the VPS reaching the home and personal networks over WireGuard, and the admin using Teleport over SSH.
- Inventory VMs and containers
- Reader
Deployment nodes list XCP-ng, Proxmox and Windows hosts, a QNAP NAS with a media stack, and VMs such as Talos (Portainer, AI News Tracker, Freqtrade), Home Assistant and Caddy with Prometheus and Grafana, each with CPU, RAM and disk properties.
- Edit and re-export the diagram
- Diagram maintainerDiagram renderers
The maintainer edits architecture.plantuml or architecture.drawio and exports a picture such as home architecture.png.
2.1. Scenario: Follow a web request into the home lab
- Open architecture.plantuml, or the v2 link in README.md rendered by the PlantUML server.
- Start at the User person, who reaches Cloudflare (CDN and reverse proxy) over HTTPS.
- Follow Cloudflare to the OVH VPS, which runs Caddy, Teleport and Uptime Kuma.
- Follow the WireGuard link from the VPS to the Personal Network and its Proxmox host.
- See the Caddy VM route traffic to AI News Tracker, Marketwatch, Portainer, Plex and Jellyfin.
Files readREADME.mdarchitecture.plantumlarchitecture.drawio.htmlarchitecture.drawio
3. Getting started
These commands come from the repository documentation. They were not run during this review.
4. Repository references
The repository does not provide a detailed guide for these steps. Start with its README and the source walkthrough above.
5. Features and components 2
- Editable sources
- The root includes both a PlantUML source and a draw.io document. These are separate diagram representations. Their presence does not mean that one is automatically generated from the other.
- Published views
- PNG and HTML files provide convenient viewing formats. The README links readers to those representations. The repository describes infrastructure; it does not deploy or monitor the services shown.
6. Architecture
Expand a component to follow its connections, or explore the full diagram.
PlantUML source
PlantUML rendering
- From PlantUML source
- To Diagram image
Diagram image
- From PlantUML rendering
draw.io source
HTML and PNG export
- From draw.io source
Mermaid Interactive diagram
System overview of the components and connections verified in the repository.

flowchart LR
n0["PlantUML source"]
n1["PlantUML rendering"]
n2["Diagram image"]
n3["draw.io source"]
n4["HTML and PNG export"]
n0 --> n1
n1 --> n2
n3 --> n4
Text version of the diagram
- PlantUML source → PlantUML rendering
- PlantUML rendering → Diagram image
- draw.io source → HTML and PNG export
Follow one path through the code
Choose the editable format first, then compare its rendered view with the exported image. Keeping both paths visible helps prevent a screenshot from becoming the only surviving description of the system.
7. Technical dossier
Built from the source at commit a511b1a (1 files). Each item comes from a pattern match in the code, so open the linked file before relying on it.
7.1. Layers and modules
Folders are sorted into layers by name, from the user interface down to data access. Because the sorting uses names only, the diagram says nothing about calls between layers.
Mermaid Layered view
flowchart TB
subgraph L_presentation["Presentation"]
direction TB
presentation_0["(root)<br/>1 file"]
end
| Module | Layer | Files | Types | Extensions |
|---|---|---|---|---|
(root) | Presentation | 1 | 0 | .html |
7.2. C4 model
From system context to code declarations. Each level reflects the available source evidence.
UML 1 · System context
The widest C4 view: who uses the project and which outside systems and data stores it relies on. Rendered with uml-mcp.
PlantUML source
@startuml
!include <C4/C4_Context>
LAYOUT_LEFT_RIGHT()
System(SYS, "architecture", "This archived repository stores a home-infrastructure diagram in seve…")
@enduml
Level 2: the available sources do not support this view.
UML 3 · Components and layers
Modules grouped by source-layer classification. Boundaries show organization, not runtime isolation or call relationships. Rendered with uml-mcp.
PlantUML source
@startuml
!include <C4/C4_Component>
LAYOUT_TOP_DOWN()
System_Boundary(SYS, "architecture") {
Boundary(L0, "Presentation", "layer") {
Component(M0_0, "(root)", "HTML", "1 files")
}
}
@enduml
Level 4: the available sources do not support this view.
7.3. CI/CD pipeline
No CI/CD pipeline in the repository. The code is built and run by hand, as described above.
7.4. Deployment
Mermaid Deployment diagram
flowchart LR
repo[("GitHub repository")]
local["Local machine"]
repo -->|"clone and run"| local
The repository has no Dockerfile, Compose file or hosting configuration, so the code runs on the machine that clones it.
The available sources do not document the remaining sections.
8. Reference
1 / 1 eligible files read (7 in the tree); 0 oversized, 0 failed reads and 0 syntax diagnostics.
What the scan covers
Known dependency/build folders, credential files and binaries are excluded. The scan covers READMEs, recognized manifests and parser-supported source files.
Linguist statistics cover the whole repository and may include other languages.
10. Files to read 3
11. Glossary
Repository
The versioned source files, configuration, and history of a project.
README
The repository’s entry document, usually covering its purpose and initial setup.
Dependency
A library, tool, or service that another component needs to build or run.
CLI
A text interface in which commands and arguments select operations. Exit codes let scripts detect success or failure.
Continuous integration
Automated checks that run when source changes, such as building, testing, and linting. Passing checks cover only what those checks exercise.
Mermaid
A text-based diagram language. Nodes and connections describe a model; the diagram itself does not execute the project.
GPU
A processor designed for parallel workloads, including graphics rendering and many numerical operations.
12. References
- antoinebou12. (2026, November 5). architecture. [Software repository] github.com.
- antoinebou12. (2026, November 5). architecture: README. [Repository documentation] github.com.
- antoinebou12. (2026, November 5). README.md. [Source file] github.com.
- antoinebou12. (2026, November 5). architecture.plantuml. [Source file] github.com.
- antoinebou12. (2026, November 5). architecture.drawio. [Source file] github.com.
- Boucher, A. (2026, October 23). architecture: Architecture as editable documentation. [Project article] antoineboucher.info.
Sources without a publication date show the date they were last checked, November 5, 2026. File links retain the inspected revision where available.