Mermaid
by megait004
Guide for creating mermaid diagrams for C++ learning and documentation. Creates visual diagrams to help learners understand concepts.
Skill Details
Repository Files
24 files in this skill directory
name: mermaid description: Guide for creating mermaid diagrams for C++ learning and documentation. Creates visual diagrams to help learners understand concepts. allowed_tools:
- Bash(md *)
- Write
Mermaid Diagram Skill
This skill helps you create Mermaid diagrams for C++ learning. Diagrams visualize concepts, memory layout, execution flow, and code structure to make learning easier.
Core Workflow
Follow these steps for every diagram creation:
1. Understand the Request
- Identify the diagram type needed (flowchart, sequence, class, etc.)
- Extract key elements: entities, relationships, flow, hierarchy
- Determine if creating for: concept explanation, code analysis, or exercise
2. Generate Mermaid Code
- Create syntactically correct Mermaid diagram code
- Use appropriate diagram type for the learning goal
- Apply consistent naming and styling
- Keep diagrams simple and focused
Supported Diagram Types
Load examples from examples/ directory as needed:
Basic Diagrams:
- Flowchart (
examples/flowchart.md) - Sequence Diagram (
examples/sequence.md) - Class Diagram (
examples/class.md) - State Diagram (
examples/state.md) - Entity Relationship (
examples/er.md)
Planning & Management:
- Gantt Chart (
examples/gantt.md) - User Journey (
examples/journey.md) - Timeline (
examples/timeline.md) - Kanban (
examples/kanban.md)
Data Visualization:
- Pie Chart (
examples/pie.md) - XY Chart (
examples/xy-chart.md) - Quadrant Chart (
examples/quadrant.md) - Sankey (
examples/sankey.md) - Radar (
examples/radar.md) - Treemap (
examples/treemap.md)
Technical Diagrams:
- Git Graph (
examples/git.md) - C4 Diagram (
examples/c4.md) - Requirement Diagram (
examples/requirement.md) - Architecture (
examples/architecture.md) - Block Diagram (
examples/block.md) - Packet (
examples/packet.md)
Organizational:
- Mindmap (
examples/mindmap.md) - ZenUML (
examples/zenuml.md)
Diagram Types for C++ Learning
| Concept | Best Diagram Type | Purpose |
|---|---|---|
| Memory layout | graph or ASCII |
Visualize stack vs heap, object storage |
| Ownership/Smart pointers | flowchart |
Show ownership transfer, lifecycle |
| Class relationships | classDiagram |
Inheritance, composition, aggregation |
| Function execution | sequenceDiagram |
Call flow, object interactions |
| State machines | stateDiagram |
Object states, transitions |
| Template instantiation | flowchart |
Compile-time process |
| Move semantics | flowchart |
lvalue/rvalue conversion, move vs copy |
| Exception handling | flowchart |
Try-catch flow, stack unwinding |
| Algorithm steps | flowchart |
Step-by-step logic |
| Learning roadmap | mindmap |
Topic dependencies, order |
Code Analysis → Diagram
When analyzing C++ code to create diagrams:
Class Diagrams:
- Extract classes, methods, properties, inheritance, interfaces
- Show relationships: inheritance (
--|>), composition (*--), aggregation (o--)
Sequence Diagrams:
- Track function calls, async operations, API interactions
- Show actors, lifelines, activation boxes
Flowcharts:
- Map control flow, conditionals, loops
- Show function entry/exit points
State Diagrams:
- Identify states from enums, state machines, status fields
- Map transitions and events
Learning-Focused Guidelines
For Concept Explanations:
- Start with simple diagram, add complexity gradually
- Use color coding to highlight important elements
- Add labels explaining each step/component
- Keep to one main idea per diagram
For Memory Visualization:
- Use ASCII for simple layouts (faster to read)
- Use Mermaid
graphfor complex relationships - Clearly label: Stack, Heap, Code segment, Data segment
- Show pointer relationships with arrows
For Execution Flow:
- Use
sequenceDiagramfor multi-object interactions - Use
flowchartfor single-function logic - Number steps to show order
- Highlight decision points
For Exercises:
- Create incomplete diagrams for learners to fill
- Use diagrams as visual hints in exercise prompts
- Show "before" and "after" states for transformation exercises
Best Practices
Styling:
- Use meaningful node IDs
- Add clear, concise labels
- Use classDefs for visual consistency
- Apply color to differentiate concepts
Readability:
- Keep diagrams focused (split large diagrams)
- Use top-to-bottom (TD) or left-to-right (LR) consistently
- Add comments in code for complex sections
- Limit to ~10-15 nodes per diagram
Learning Effectiveness:
- One concept per diagram
- Progressive complexity (simple → complex)
- Always explain the diagram in text
- Reference diagram in explanations
Output Format
Present to user:
<Show the mermaid code in a code block>
<Explain what the diagram shows>
Only save to file when user explicitly requests it.
Notes
- Use diagrams in explanations when visual helps understanding
- Mermaid diagrams render natively in GitHub, Obsidian, VS Code
- Only save to .md file when user explicitly requests
Related Skills
Dbt Transformation Patterns
Master dbt (data build tool) for analytics engineering with model organization, testing, documentation, and incremental strategies. Use when building data transformations, creating data models, or implementing analytics engineering best practices.
Clinical Decision Support
Generate professional clinical decision support (CDS) documents for pharmaceutical and clinical research settings, including patient cohort analyses (biomarker-stratified with outcomes) and treatment recommendation reports (evidence-based guidelines with decision algorithms). Supports GRADE evidence grading, statistical analysis (hazard ratios, survival curves, waterfall plots), biomarker integration, and regulatory compliance. Outputs publication-ready LaTeX/PDF format optimized for drug develo
Scientific Schematics
Create publication-quality scientific diagrams using Nano Banana Pro AI with smart iterative refinement. Uses Gemini 3 Pro for quality review. Only regenerates if quality is below threshold for your document type. Specialized in neural network architectures, system diagrams, flowcharts, biological pathways, and complex scientific visualizations.
Mermaid Diagrams
Comprehensive guide for creating software diagrams using Mermaid syntax. Use when users need to create, visualize, or document software through diagrams including class diagrams (domain modeling, object-oriented design), sequence diagrams (application flows, API interactions, code execution), flowcharts (processes, algorithms, user journeys), entity relationship diagrams (database schemas), C4 architecture diagrams (system context, containers, components), state diagrams, git graphs, pie charts,
Diagram Generation
Mermaid diagram generation for architecture visualization, data flow diagrams, and component relationships. Use for documentation, PR descriptions, and architectural analysis.
Scientific Schematics
Create publication-quality scientific diagrams using Nano Banana Pro AI with smart iterative refinement. Uses Gemini 3 Pro for quality review. Only regenerates if quality is below threshold for your document type. Specialized in neural network architectures, system diagrams, flowcharts, biological pathways, and complex scientific visualizations.
Clinical Decision Support
Generate professional clinical decision support (CDS) documents for pharmaceutical and clinical research settings, including patient cohort analyses (biomarker-stratified with outcomes) and treatment recommendation reports (evidence-based guidelines with decision algorithms). Supports GRADE evidence grading, statistical analysis (hazard ratios, survival curves, waterfall plots), biomarker integration, and regulatory compliance. Outputs publication-ready LaTeX/PDF format optimized for drug develo
Materialize Docs
Materialize documentation for SQL syntax, data ingestion, concepts, and best practices. Use when users ask about Materialize queries, sources, sinks, views, or clusters.
Dbt Transformation Patterns
Master dbt (data build tool) for analytics engineering with model organization, testing, documentation, and incremental strategies. Use when building data transformations, creating data models, or implementing analytics engineering best practices.
Mermaidjs V11
Create diagrams and visualizations using Mermaid.js v11 syntax. Use when generating flowcharts, sequence diagrams, class diagrams, state diagrams, ER diagrams, Gantt charts, user journeys, timelines, architecture diagrams, or any of 24+ diagram types. Supports JavaScript API integration, CLI rendering to SVG/PNG/PDF, theming, configuration, and accessibility features. Essential for documentation, technical diagrams, project planning, system architecture, and visual communication.
