π Standard Documentation Structure¶
This repository defines a standard, technology-agnostic documentation structure designed to be rendered with MkDocs and published as HTML.
The goal is to provide: - A shared architectural language - Clear development and operational guidelines - Reusable reference architectures - Consistency across teams and platforms
β οΈ Important Operational Note¶
This documentation is for informational purposes and should be kept outside of production CI/CD processes.
No modifications to this repository should trigger restarts, deployments, or automated executions in production environments.
ποΈ Repository design and documentation governance¶
project-with-documentation/
ββ app/ # Application source code (API, WebApp, Worker, etc.)
ββ docs/ # π Public documentation (no authentication required)
β # Black-box view: how to use the system
β # Rendered as a public MkDocs site
ββ docs-private/ # π Private documentation (authentication required)
β # White-box view: internal architecture and operations
β # Rendered as a secured MkDocs site
ββ .dockerignore # Docker ignore rules
ββ .env # Local environment variables (never committed)
ββ .env.sample # Environment variable template
ββ .gitignore # Git ignore rules
ββ README-private.md # π Private documentation entry point
β # Used as MkDocs root for docs-private/
ββ README.md # π Public documentation entry point
β # Used as MkDocs root for docs/
π Documentation Folder Structure (Language-Agnostic)¶
This structure applies to any service type: - API - Web Application - Worker / Background Job - Microservice - Event Consumer / Producer - Batch / Data Processor
The structure documents the what, why, how, and how-to-operate of a service.
docs/
βββ README.md
β
βββ overview/
β βββ README.md
β βββ purpose.md
β βββ scope.md
β βββ stakeholders.md
β βββ glossary.md
β
βββ architecture/
β βββ README.md
β βββ system-context.md
β βββ logical-architecture.md
β βββ physical-architecture.md
β βββ data-flow.md
β βββ deployment-architecture.md
β βββ architecture-decisions.md
β
βββ business-and-requirements/
β βββ README.md
β βββ functional-requirements.md
β βββ non-functional-requirements.md
β βββ business-rules.md
β βββ use-cases.md
β
βββ api-or-interface/
β βββ README.md
β βββ contracts.md
β βββ versioning.md
β βββ error-handling.md
β βββ pagination-filtering.md
β βββ examples.md
β
βββ data/
β βββ README.md
β βββ data-sources.md
β βββ data-model.md
β βββ data-validation.md
β βββ data-quality.md
β βββ data-retention.md
β
βββ security/
β βββ README.md
β βββ authentication.md
β βββ authorization.md
β βββ secrets-management.md
β βββ threat-modeling.md
β βββ compliance.md
β
βββ development/
β βββ README.md
β βββ coding-standards.md
β βββ project-structure.md
β βββ configuration.md
β βββ dependencies.md
β βββ local-development.md
β
βββ testing-and-quality/
β βββ README.md
β βββ testing-strategy.md
β βββ unit-tests.md
β βββ integration-tests.md
β βββ contract-tests.md
β βββ acceptance-criteria.md
β
βββ devops-and-deployment/
β βββ README.md
β βββ ci-cd.md
β βββ environments.md
β βββ infrastructure.md
β βββ deployment-strategy.md
β βββ rollback-strategy.md
β
βββ operations/
β βββ README.md
β βββ monitoring.md
β βββ logging.md
β βββ alerting.md
β βββ health-checks.md
β βββ runbooks.md
β
βββ performance-and-scalability/
β βββ README.md
β βββ performance-requirements.md
β βββ scalability-strategy.md
β βββ caching.md
β βββ load-testing.md
β
βββ cost-management/
β βββ README.md
β βββ cost-estimation.md
β βββ cost-optimization.md
β βββ capacity-planning.md
β
βββ roadmap/
β βββ README.md
β βββ mvp-definition.md
β βββ backlog.md
β βββ future-evolution.md
β
βββ risks-and-assumptions/
β βββ README.md
β βββ risks.md
β βββ assumptions.md
β βββ mitigations.md
β
βββ changelog/
β βββ README.md
β
βββ annexes/
β βββ README.md
β βββ references.md
β βββ faq.md
β
βββ assets/
βββ diagrams/
βββ images/
βββ files/