thierryn/fire-flow/excalidraw-diagrams
Claude Code and agent skill by thierryn/fire-flow
- community
Checking that the SKILL.md file is still in the repository.
Creates Excalidraw diagrams programmatically. Use when the user wants flowcharts, architecture diagrams, system designs, or any visual diagram instead of ASCII art. Outputs .excalidraw files that can be opened directly in Excalidraw or VS Code with the Excalidraw extension.
Install
npx vskill@latest install thierryn/fire-flow/excalidraw-diagramsSKILL.md
Excalidraw Diagram Generator
This skill generates Excalidraw diagrams programmatically using Python. Instead of creating ASCII diagrams, use this to produce professional-looking, editable diagrams.
Output format: .excalidraw JSON files that can be:
- Opened at https://excalidraw.com (drag & drop the file)
- Edited in VS Code with the Excalidraw extension
- Embedded in documentation
- Exported to SVG/PNG for embedding in Google Docs, presentations, etc.
Quick Start
Method 1: Direct Python Script (Recommended)
Write a Python script using the generator library and run it:
Run with:
Method 2: Inline Python Execution
API Reference
Diagram Class
The base class for all diagrams.
Methods
`box(x, y, label, width=150, height=60, color="blue", shape="rectangle", font_size=18)`
Create a labeled shape. Returns an Element for connecting.
x, y: Position (top-left corner)label: Text to displaycolor: "blue", "green", "red", "yellow", "orange", "violet", "cyan", "teal", "gray", "black"shape: "rectangle", "ellipse", "diamond"
`text_box(x, y, content, font_size=20, color="black")`
Create standalone text.
`arrow_between(source, target, label=None, color="black", from_side="auto", to_side="auto")`
Draw an arrow between two elements.
from_side,to_side: "auto", "left", "right", "top", "bottom"
`line_between(source, target, color="black")`
Draw a line (no arrowhead) between elements.
`save(path)`
Save the diagram. Extension .excalidraw added if not present.
Configuration & Styling
The diagram generator supports extensive customization through configuration classes.
DiagramStyle - Global Appearance
Control the overall look of all elements in the diagram:
Roughness levels:
0- Architect: Clean, precise lines1- Artist: Normal hand-drawn look (default)2- Cartoonist: Rough, sketchy appearance
Color Schemes
Use semantic colors from predefined schemes:
Scheme color mappings:
| Scheme | Primary | Secondary | Accent | Warning | Danger | |
|---|---|---|---|---|---|---|
| default | blue | green | violet | yellow | red | |
| monochrome | black | gray | gray | gray | black | |
| corporate | blue | teal | violet | orange | red | |
| vibrant | violet | cyan | orange | yellow | red | |
| earth | teal | green | orange | yellow | red |
FlowchartStyle - Flowchart Customization
Customize flowchart node colors and routing behavior:
ArchitectureStyle - Architecture Diagram Customization
BoxStyle - Text Box Sizing
Control automatic text box sizing:
Flowchart Class
Specialized for flowcharts with automatic positioning.
Methods
start(label="Start")- Green ellipseend(label="End")- Red ellipseprocess(node_id, label, color="blue")- Blue rectangledecision(node_id, label, color="yellow")- Yellow diamondnode(node_id, label, shape, color, width, height)- Generic nodeconnect(from_id, to_id, label=None)- Arrow between nodesposition_at(x, y)- Set position for next node
AutoLayoutFlowchart Class
For complex flowcharts with automatic hierarchical layout. Requires grandalf package.
Node types for routing:
terminal- Start/end nodesprocess- Standard processing stepsdecision- Decision diamonds (arrows exit from sides)
Methods
add_node(node_id, label, shape, color, width, height, node_type)- Add a nodeadd_edge(from_id, to_id, label, color)- Add an edgecompute_layout(start_x, start_y, max_width, max_height, routing, two_column, target_aspect_ratio, column_gap)- Auto-position nodes
ArchitectureDiagram Class
For system architecture diagrams.
Methods
component(id, label, x, y, width=150, height=80, color="blue")database(id, label, x, y, color="green")- Ellipse shapeservice(id, label, x, y, color="violet")user(id, label="User", x=100, y=100)- Gray ellipseconnect(from_id, to_id, label=None, bidirectional=False)
Color Reference
Available colors (stroke color, with matching light background):
| Color | Stroke Hex | Use For | |
|---|---|---|---|
blue | #1971c2 | Primary components | |
green | #2f9e44 | Success, databases | |
red | #e03131 | Errors, end states | |
yellow | #f08c00 | Warnings, decisions | |
orange | #e8590c | Highlights | |
violet | #6741d9 | Services | |
cyan | #0c8599 | Network | |
teal | #099268 | Secondary | |
gray | #868e96 | Users, actors | |
black | #1e1e1e | Text, arrows |
Complete Examples
Example 1: Simple Flow
Example 2: Decision Flowchart
Example 3: Microservices Architecture
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills-library/excalidraw-diagrams/SKILL.md
Popularity
- Repository stars
- 77
- Repository forks
- 19
- 7-day trend score
- 22
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 20 Mar 2026, 7 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/thierryn/fire-flow/excalidraw-diagrams)