Mermaid

by megait004

document

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 graph for complex relationships
  • Clearly label: Stack, Heap, Code segment, Data segment
  • Show pointer relationships with arrows

For Execution Flow:

  • Use sequenceDiagram for multi-object interactions
  • Use flowchart for 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.

testingdocumenttool

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

developmentdocumentcli

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.

artdocument

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,

artdesigncode

Diagram Generation

Mermaid diagram generation for architecture visualization, data flow diagrams, and component relationships. Use for documentation, PR descriptions, and architectural analysis.

documentdata

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.

artdocument

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

developmentdocumentcli

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.

documentdata

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.

testingdocumenttool

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.

artdocumentapi

Skill Information

Category:Document
Last Updated:1/3/2026