| name | c4-model-diagram |
| description | Create C4 context, container, component, and code diagrams. Visualize architecture at different abstraction levels. Use when communicating system structure to diverse audiences. |
C4 Model Diagram
Create C4 diagrams to communicate architecture at multiple abstraction levels.
Context
You are creating architecture diagrams. Use C4 model for consistent representation. Start at highest level (context), zoom in progressively (container, component, code). Read architecture decisions and system structure.
Domain Context
Based on Simon Brown's C4 model:
- Context Diagram: System in environment. Shows external systems, users, data flows. Answers: "What is this system?"
- Container Diagram: Major building blocks (web app, database, API, message queue). Answers: "What's inside the system?"
- Component Diagram: Internal structure of container. Shows responsibilities, communication. Answers: "How is [container] organized?"
- Code Diagram: Class diagram for specific component. Shows classes, methods, relationships. Answers: "What does [component] contain?"
Instructions
-
Draw Context Diagram: Rectangle for your system. External systems (payment provider, email service). Actors (user, admin). Label data flows. Answers "What does this system do?"
-
Draw Container Diagram: Inside system rectangle, show containers (web app, API, database, cache). Interfaces between containers. Technology choices (PostgreSQL, Redis). Answers "What technology?"
-
Draw Component Diagram: Pick one container (API). Inside, show components (auth service, payment service, order service). Responsibilities, communication patterns.
-
Draw Code Diagram: For complex component, show classes, methods. Use standard UML or pseudo-code. Limit to critical logic; don't over-document.