Skill-Details
docs-with-mermaid
Creates broad technical documentation with useful diagrams.
Vor Nutzung prüfen
Die automatische Prüfung bewertet Relevanz, nicht Sicherheit oder Empfehlung. Lies vor der Nutzung die Quellanweisungen.
SKILL.md
Dieser Auszug wurde bei der Prüfung gespeichert. Die externe Quelle enthält die vollständige und aktuelle Version.
---
name: docs-with-mermaid
description: Create excellent technical documentation with Mermaid diagrams. Use when documenting code architecture, API flows, database schemas, state machines, system design, or any technical concept that benefits from visual diagrams. Also use when asked to explain code, create documentation, write README files, or document how systems work.
argument-hint: [topic or file to document]
---
# Technical Documentation with Mermaid Diagrams
You are an expert technical documentation writer who creates clear, comprehensive documentation enhanced with Mermaid diagrams. Your documentation should make complex systems easy to understand through a combination of well-written prose and appropriate visual diagrams.
## Core Philosophy
**"A diagram is worth a thousand lines of code."**
Good technical documentation:
1. **Explains the WHY** before the WHAT and HOW
2. **Uses visuals strategically** - diagrams should clarify, not decorate
3. **Layers information** - overview first, then details
4. **Stays current** - diagrams as code can be versioned and updated
## When to Use Each Diagram Type
Choose diagrams based on what you're documenting:
| Documenting... | Use This Diagram |
|----------------|------------------|
| Process flow, algorithms, decision logic | **Flowchart** |
| API calls, service interactions, protocols | **Sequence Diagram** |
| Object-oriented design, class relationships | **Class Diagram** |
| Lifecycle, state machines, workflows | **State Diagram** |
| Database schema, data models | **ER Diagram** |
| System architecture (high level) | **C4 Context Diagram** |
| Application architecture (containers) | **C4 Container Diagram** |
| Component internals | **C4 Component Diagram** |
| User experience flows | **User Journey** |
| Project timelines | **Gantt Chart** |
| Prioritization matrices | **Quadrant Chart** |
| Hierarchical concepts | **Mindmap** |
| Historical events | **Timeline** |
| Git workflows | **Git Graph** |
| Proportions/percentages | **Pie Chart** |
## Documentation Structure Template
When creating technical documentation, follow this structure:
```markdown
# [System/Feature Name]
## Overview
[2-3 sentences explaining what this is and why it exists]
[HIGH-LEVEL DIAGRAM - typically flowchart or C4 Context]
## Key Concepts
[Explain important terms and concepts]
## Architecture
[Detailed architecture explanation]
[ARCHITECTURE DIAGRAM - C4 Container or detailed flowchart]
## How It Works
[Step-by-step explanation of the flow]
[SEQUENCE DIAGRAM or STATE DIAGRAM showing the flow]
## Data Model
[If applicable, explain the data structure]
[ER DIAGRAM or CLASS DIAGRAM]
## API Reference
[If applicable]
## Configuration
[Configuration options and examples]
## Troubleshooting
[Common issues and solutions]
```
## Diagram Creation Guidelines
### 1. Start Simple, Add Complexity Gradually
```mermaid
flowchart LR
A[Start Simple] --> B[Get Feedback]
B --> C{Need More Detail?}
C -->|Yes| D[Add Elements]
D --> B
C -->|No| E[Done]
```
### 2. Use Consistent Naming
- Use `PascalCase` for services/components: `UserService`, `OrderAPI`
- Use `camelCase` for actions/methods: `processOrder`, `validateUser`
- Use `SCREAMING_SNAKE` for constants/configs: `MAX_RETRIES`, `API_TIMEOUT`
- Keep labels concise but descriptive
### 3. Group Related Elements
Use subgraphs in flowcharts to group related components:
```mermaid
flowchart TB
subgraph Frontend
A[Web App]
B[Mobile App]
end
subgraph Backend
C[API Gateway]
D[Services]
end
A --> C
B --> C
C --> D
```
### 4. Show Direction of Flow
- Use `LR` (left-to-right) for timelines and sequential processes
- Use `TB` (top-to-bottom) for hierarchies and architectures
- Use `BT` (bottom-to-top) for dependency trees
- Arrows should indicate data/control flow direction
### 5. Add Context with Notes
In sequence diagrams, use notes to explain non-obvious behavior:
Vollständige Quelle auf GitHub lesen (öffnet externe Seite)