Skip to content

πŸ“¦ Project with Documentation – Template Overview

This repository provides a ready-to-use project template that demonstrates how to structure:

  • Application source code
  • Public documentation
  • Private (authenticated) documentation
  • MkDocs-based documentation sites
  • Reusable project scaffolding

It is intended to be used as a reference and starting point for development teams.


πŸ“š Table of Contents

πŸ“ŒNote: It is recommended that each developer create a README.md file in their repo code with the table of contents to the files, serving as an index like index.html. This way, when converted to HTML using mkdocs, it is not necessary to manage menus for each repo; instead, each repo manages its own menu like a landing page.

πŸ“– Documentation

⚠️ 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.

trigger:
  branches:
    include:
    - main
  paths:
    include:
    - Microservice/*
    exclude:
    - Microservice/docs/**
    - Microservice/docs-private/**
    - Microservice/*.md
    - '*.md' # root path

πŸ“¦ Templates


πŸ›οΈ Documentation repository and governance design template

# πŸ“ Project Documentation Structure

```text
project/
β”‚
β”œβ”€ app/                                 # Application source code (API, Worker, WebApp, etc.)
β”‚
β”œβ”€ docs/                                # 🌐 Public documentation (no authentication required)
β”‚  β”‚                                    # Black-box view: how to use the system
β”‚  β”‚                                    # Rendered as a public MkDocs site
β”‚  β”‚
β”‚  β”œβ”€ about.md                          # [Required] Component metadata, public reference property - Not confidential
β”‚  |                                    # The about.md content must be exposed through a runtime-accessible endpoint or page,
β”‚  |                                    # enabling identification of the component, ownership, repositories, and documentation links.
β”‚  β”‚
β”‚  β”œβ”€ overview/
β”‚  β”‚  β”œβ”€ README.md                      # General component overview
β”‚  β”‚  └─ authentication.md              # Public authentication details
β”‚  β”‚
β”‚  β”œβ”€ api/
β”‚  β”‚  β”œβ”€ endpoints.md                   # Public API endpoints
β”‚  β”‚  └─ errors.md                      # Public error catalog
β”‚  β”‚
β”‚  └─ usage/
β”‚     └─ getting-started.md             # Getting started guide
β”‚
β”œβ”€ docs-private/                        # πŸ” Private documentation (authentication required)
β”‚  β”‚                                    # White-box view: internal architecture & operations
β”‚  β”‚                                    # Rendered as a secured MkDocs site
β”‚  β”‚
β”‚  β”œβ”€ about.md                          # [Required] Component metadata, internal reference property - Confidential
β”‚  |                                    # The about.md content must be exposed through a runtime-accessible endpoint or page,
β”‚  |                                    # enabling identification of the component, ownership, repositories, and documentation links.
β”‚  β”‚
β”‚  β”œβ”€ architecture/
β”‚  β”‚  └─ system-overview.md             # Internal architecture overview
β”‚  β”‚
β”‚  β”œβ”€ business-logic/
β”‚  β”‚  └─ rules.md                       # Business rules
β”‚  β”‚
β”‚  β”œβ”€ data/
β”‚  β”‚  └─ queries.md                     # Queries and data access
β”‚  β”‚
β”‚  β”œβ”€ lifecycle/                        # Technology Lifecycle Declaration (TLD)
β”‚  β”‚  └─ technology-lifecycle.md        # Every component MUST declare its Technology Lifecycle
β”‚  β”‚
β”‚  β”œβ”€ security/
β”‚  β”‚  └─ jwt-validation.md              # Security implementation details
β”‚  β”‚
β”‚  └─ operations/
β”‚     └─ runbooks.md                    # Operational runbooks
β”‚
β”œβ”€ .dockerignore                        # Docker ignore rules
β”œβ”€ .env.sample                          # Environment variable template
β”œβ”€ .gitignore                           # Git ignore rules
β”œβ”€ README.md                            # 🌐 Public documentation entry point (MkDocs root)
└─ README-private.md                    # πŸ” Private documentation entry point (MkDocs root)