🚀 DaC (Documentation as Code) Essentials for Software Documentation


🎯 Purpose

Documentation as Code (DaC) treats documentation like source code, enabling version control, automation, and collaborative development.


🌱 Origin

The DaC movement gained significant traction with the rise of Agile methodologies and DevOps practices in the 2010s, with various practitioners advocating for its adoption.


🧠 Essentials

DaC Essentials

🛠️ PlantUML – Focus Areas (Text-Based Diagrams)

  1. Important URLs
  1. Versioning with Git
    → Store .plantuml files in repo for team collaboration.

  2. Tooling Integration
    → Use VS Code extension for PlantUML

  3. @startuml / @enduml structure
    → Every diagram starts and ends with these.

  4. Basic Diagrams:
    → Class diagrams, Sequence diagrams, Component diagrams, Deployment diagrams

  5. Include files / modular reuse
    !include common_styles.iuml

  6. Use Lib for efficient drawing
    C4-PlantUML Lib


🎨 draw.io – Focus Areas (Drag-and-Drop Visual Diagrams)

  1. Important URLs
  1. Versioning with Git
    → Store .drawio files in repo for team collaboration.

  2. Tooling Integration
    → Use VS Code extension for Draw.io

  3. Use Templates Efficiently
    → System, Network, UML, ERD templates cover most needs.

  4. Grid Layout & Layers
    → Align elements; group layers for complex diagrams.

  5. Export Options
    → PNG, SVG, PDF with embedded XML for future edits.


✅ PlantUml vs. Draw.io, Which to Use When

Use CaseTool
Code versioning & text editingPlantUML
Auto-generated diagrams (from code)PlantUML
Quick visual layout/mockupdraw.io
Interactive team brainstormingdraw.io

📝 Markdown

Markdown cheat sheet

All cheat sheets are taken from our Udemy Online Course. Interested? Check out:
All-In-One Full Stack DevOps - From Idea to Cloud