A markdown-first catalog of Gang-of-Four and Architectural design patterns, published as a static site on GitHub Pages.
Live site: https://cre47e.github.io/design-patterns/
Built with MkDocs Material. Every pattern is a markdown file; images live alongside the content under docs/assets/images/<pattern-slug>/.
All content changes go through a GitHub Pull Request and require Code Owner approval before they merge to main and publish.
-
Fork or branch from
main. -
Add or edit a markdown file under
docs/<category>/<pattern>.md. -
Place any images under
docs/assets/images/<pattern-slug>/and link them with a relative path:
-
Update
nav:inmkdocs.ymlif you added a new page. -
Run
mkdocs build --strictlocally to catch broken links. -
Open a PR. The
pr-checkworkflow will build the site; a Code Owner reviews; on merge,deploypublishes to GitHub Pages.
See docs/contributing.md for the full guide and pattern page template.
Requires Python 3.10+.
python -m venv .venv
.venv\Scripts\Activate.ps1
pip install -r requirements.txt
mkdocs serve # http://127.0.0.1:8000/design-patterns/
mkdocs build --strict # what CI runsOn macOS / Linux:
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
mkdocs servedesign-patterns/
mkdocs.yml # site config and nav
requirements.txt # Python build dependencies
docs/
index.md # landing page
contributing.md # author + review workflow
about.md
creational/ # GoF creational patterns (.md)
structural/ # GoF structural patterns (.md)
behavioral/ # GoF behavioral patterns (.md)
architectural/ # higher-level architectural patterns (.md)
assets/
images/<pattern>/ # one folder per pattern, kept apart from .md
stylesheets/extra.css
.github/
CODEOWNERS # all docs changes require @cre47e review
pull_request_template.md
workflows/
pr-check.yml # mkdocs build --strict on every PR
deploy.yml # publishes to GitHub Pages on push to main
Content: CC BY 4.0. Code samples: MIT.