Architecture Diagram Skill
Generate professional, dark-themed technical architecture diagrams as standalone HTML files with inline SVG graphics. No external tools, no API keys, no rendering libraries — just write the HTML file and open it in a browser.
Scope
Best suited for:
- Software system architecture (frontend / backend / database layers)
- Cloud infrastructure (VPC, regions, subnets, managed services)
- Microservice / service-mesh topology
- Database + API map, deployment diagrams
- Anything with a tech-infra subject that fits a dark, grid-backed aesthetic
Look elsewhere first for:
- Physics, chemistry, math, biology, or other scientific subjects
- Physical objects (vehicles, hardware, anatomy, cross-sections)
- Floor plans, narrative journeys, educational / textbook-style visuals
- Hand-drawn whiteboard sketches (consider
excalidraw)
- Animated explainers (consider an animation skill)
If a more specialized skill is available for the subject, prefer that. If none fits, this skill can also serve as a general SVG diagram fallback — the output will just carry the dark tech aesthetic described below.
Based on Cocoon AI's architecture-diagram-generator (MIT).
Workflow
- User describes their system architecture (components, connections, technologies)
- Generate the HTML file following the design system below
- Save with
write_file to a .html file (e.g. ~/architecture-diagram.html)
- User opens in any browser — works offline, no dependencies
Output Location
Save diagrams to a user-specified path, or default to the current working directory:
./[project-name]-architecture.html
Preview
After saving, suggest the user open it:
# macOS
open ./my-architecture.html
# Linux
xdg-open ./my-architecture.html
Design System & Visual Language
Color Palette (Semantic Mapping)
Use specific rgba fills and hex strokes to categorize components:
| Component Type |
Fill (rgba) |
Stroke (Hex) |
| Frontend |
rgba(8, 51, 68, 0.4) |
#22d3ee (cyan-400) |
| Backend |
rgba(6, 78, 59, 0.4) |
#34d399 (emerald-400) |
| Database |
rgba(76, 29, 149, 0.4) |
#a78bfa (violet-400) |
| AWS/Cloud |
rgba(120, 53, 15, 0.3) |
#fbbf24 (amber-400) |
| Security |
rgba(136, 19, 55, 0.4) |
#fb7185 (rose-400) |
| Message Bus |
rgba(251, 146, 60, 0.3) |
#fb923c (orange-400) |
| External |
rgba(30, 41, 59, 0.5) |
#94a3b8 (slate-400) |
Typography & Background
- Font: JetBrains Mono (Monospace), loaded from Google Fonts
- Sizes: 12px (Names), 9px (Sublabels), 8px (Annotations), 7px (Tiny labels)
- Background: Slate-950 (
#020617) with a subtle 40px grid pattern
<!-- Background Grid Pattern -->
<pattern id="grid" width="40" height="40" patternUnits="userSpaceOnUse">
<path d="M 40 0 L 0 0 0 40" fill="none" stroke="#1e293b" stroke-width="0.5"/>
</pattern>
Technical Implementation Details
Component Rendering
Components are rounded rectangles (rx="6") with 1.5px strokes. To prevent arrows from showing through semi-transparent fills, use a double-rect masking technique:
- Draw an opaque background rect (
#0f172a)
- Draw the semi-transparent styled rect on top
Connection Rules
- Z-Order: Draw arrows early in the SVG (after the grid) so they render behind component boxes
- Arrowheads: Defined via SVG markers
- Security Flows: Use dashed lines in rose color (
#fb7185)
- Boundaries:
- Security Groups: Dashed (
4,4), rose color
- Regions: Large dashed (
8,4), amber color, rx="12"
Spacing & Layout Logic
- Standard Height: 60px (Services); 80-120px (Large components)
- Vertical Gap: Minimum 40px between components
- Message Buses: Must be placed in the gap between services, not overlapping them
- Legend Placement: CRITICAL. Must be placed outside all boundary boxes. Calculate the lowest Y-coordinate of all boundaries and place the legend at least 20px below it.
Document Structure
The generated HTML file follows a four-part layout:
- Header: Title with a pulsing dot indicator and subtitle
- Main SVG: The diagram contained within a rounded border card
- Summary Cards: A grid of three cards below the diagram for high-level details
- Footer: Minimal metadata
Info Card Pattern
<div class="card">
<div class="card-header">
<div class="card-dot cyan"></div>
<h3>Title</h3>
</div>
<ul>
<li>• Item one</li>
<li>• Item two</li>
</ul>
</div>
Output Requirements
- Single File: One self-contained
.html file
- No External Dependencies: All CSS and SVG must be inline (except Google Fonts)
- No JavaScript: Use pure CSS for any animations (like pulsing dots)
- Compatibility: Must render correctly in any modern web browser
Template Reference
Load the full HTML template for the exact structure, CSS, and SVG component examples:
skill_view(name="architecture-diagram", file_path="templates/template.html")
The template contains working examples of every component type (frontend, backend, database, cloud, security), arrow styles (standard, dashed, curved), security groups, region boundaries, and the legend — use it as your structural reference when generating diagrams.
1---2name: architecture-diagram3description: Architecture Diagram Skill4---5# Architecture Diagram Skill67Generate professional, dark-themed technical architecture diagrams as standalone HTML files with inline SVG graphics. No external tools, no API keys, no rendering libraries — just write the HTML file and open it in a browser.89## Scope1011**Best suited for:**12- Software system architecture (frontend / backend / database layers)13- Cloud infrastructure (VPC, regions, subnets, managed services)14- Microservice / service-mesh topology15- Database + API map, deployment diagrams16- Anything with a tech-infra subject that fits a dark, grid-backed aesthetic1718**Look elsewhere first for:**19- Physics, chemistry, math, biology, or other scientific subjects20- Physical objects (vehicles, hardware, anatomy, cross-sections)21- Floor plans, narrative journeys, educational / textbook-style visuals22- Hand-drawn whiteboard sketches (consider `excalidraw`)23- Animated explainers (consider an animation skill)2425If a more specialized skill is available for the subject, prefer that. If none fits, this skill can also serve as a general SVG diagram fallback — the output will just carry the dark tech aesthetic described below.2627Based on [Cocoon AI's architecture-diagram-generator](https://github.com/Cocoon-AI/architecture-diagram-generator) (MIT).2829## Workflow30311. User describes their system architecture (components, connections, technologies)322. Generate the HTML file following the design system below333. Save with `write_file` to a `.html` file (e.g. `~/architecture-diagram.html`)344. User opens in any browser — works offline, no dependencies3536### Output Location3738Save diagrams to a user-specified path, or default to the current working directory:39```40./[project-name]-architecture.html41```4243### Preview4445After saving, suggest the user open it:46```bash47# macOS48open ./my-architecture.html49# Linux50xdg-open ./my-architecture.html51```5253## Design System & Visual Language5455### Color Palette (Semantic Mapping)5657Use specific `rgba` fills and hex strokes to categorize components:5859| Component Type | Fill (rgba) | Stroke (Hex) |60| :--- | :--- | :--- |61| **Frontend** | `rgba(8, 51, 68, 0.4)` | `#22d3ee` (cyan-400) |62| **Backend** | `rgba(6, 78, 59, 0.4)` | `#34d399` (emerald-400) |63| **Database** | `rgba(76, 29, 149, 0.4)` | `#a78bfa` (violet-400) |64| **AWS/Cloud** | `rgba(120, 53, 15, 0.3)` | `#fbbf24` (amber-400) |65| **Security** | `rgba(136, 19, 55, 0.4)` | `#fb7185` (rose-400) |66| **Message Bus** | `rgba(251, 146, 60, 0.3)` | `#fb923c` (orange-400) |67| **External** | `rgba(30, 41, 59, 0.5)` | `#94a3b8` (slate-400) |6869### Typography & Background70- **Font:** JetBrains Mono (Monospace), loaded from Google Fonts71- **Sizes:** 12px (Names), 9px (Sublabels), 8px (Annotations), 7px (Tiny labels)72- **Background:** Slate-950 (`#020617`) with a subtle 40px grid pattern7374```svg75<!-- Background Grid Pattern -->76<pattern id="grid" width="40" height="40" patternUnits="userSpaceOnUse">77 <path d="M 40 0 L 0 0 0 40" fill="none" stroke="#1e293b" stroke-width="0.5"/>78</pattern>79```8081## Technical Implementation Details8283### Component Rendering84Components are rounded rectangles (`rx="6"`) with 1.5px strokes. To prevent arrows from showing through semi-transparent fills, use a **double-rect masking technique**:851. Draw an opaque background rect (`#0f172a`)862. Draw the semi-transparent styled rect on top8788### Connection Rules89- **Z-Order:** Draw arrows *early* in the SVG (after the grid) so they render behind component boxes90- **Arrowheads:** Defined via SVG markers91- **Security Flows:** Use dashed lines in rose color (`#fb7185`)92- **Boundaries:**93 - *Security Groups:* Dashed (`4,4`), rose color94 - *Regions:* Large dashed (`8,4`), amber color, `rx="12"`9596### Spacing & Layout Logic97- **Standard Height:** 60px (Services); 80-120px (Large components)98- **Vertical Gap:** Minimum 40px between components99- **Message Buses:** Must be placed *in the gap* between services, not overlapping them100- **Legend Placement:** **CRITICAL.** Must be placed outside all boundary boxes. Calculate the lowest Y-coordinate of all boundaries and place the legend at least 20px below it.101102## Document Structure103104The generated HTML file follows a four-part layout:1051. **Header:** Title with a pulsing dot indicator and subtitle1062. **Main SVG:** The diagram contained within a rounded border card1073. **Summary Cards:** A grid of three cards below the diagram for high-level details1084. **Footer:** Minimal metadata109110### Info Card Pattern111```html112<div class="card">113 <div class="card-header">114 <div class="card-dot cyan"></div>115 <h3>Title</h3>116 </div>117 <ul>118 <li>• Item one</li>119 <li>• Item two</li>120 </ul>121</div>122```123124## Output Requirements125- **Single File:** One self-contained `.html` file126- **No External Dependencies:** All CSS and SVG must be inline (except Google Fonts)127- **No JavaScript:** Use pure CSS for any animations (like pulsing dots)128- **Compatibility:** Must render correctly in any modern web browser129130## Template Reference131132Load the full HTML template for the exact structure, CSS, and SVG component examples:133134```135skill_view(name="architecture-diagram", file_path="templates/template.html")136```137138The template contains working examples of every component type (frontend, backend, database, cloud, security), arrow styles (standard, dashed, curved), security groups, region boundaries, and the legend — use it as your structural reference when generating diagrams.