architecture-diagram
Create polished dark-themed architecture diagrams as self-contained HTML+SVG files.
Skill by AK12-Official
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/ak12-official-architecture-diagram
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design, frontend, devops, security
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/architecture-diagram
What's inside
- Skill name
architecture-diagram- Description
- Create polished dark-themed architecture diagrams as self-contained HTML+SVG files. Use when the user asks for system, infrastructure, cloud, security, or network topology diagrams.
- License
- MIT
- Instructions
- 174 lines in SKILL.md · view on GitHub
Files (2)
- SKILL.md
- template.html · resources/
SKILL.md (first lines)
# Architecture Diagram Skill Create professional technical architecture diagrams as self-contained HTML files with inline SVG graphics and CSS styling. > **Version 1.1** · MIT License · Authored by [Cocoon AI](mailto:hello@cocoon-ai.com) ## Design System ### Color Palette Use these semantic colors for component types: | Component Type | Fill (rgba) | Stroke | |---------------|-------------|--------| | 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/Generic | `rgba(30, 41, 59, 0.5)` | `#94a3b8` (slate-400) | ### Typography Use JetBrains Mono for all text (monospace, technical aesthetic): ```html <link href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&display=swap" rel="stylesheet"> ``` Font sizes: 12px for component names, 9px for sublabels, 8px for annotations, 7px for tiny labels. ### Visual Elements **Background:** `#020617` (slate-950) with subtle grid pattern: ```svg <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> ``` **Component boxes:** Rounded rectangles (`rx="6"`) with 1.5px stroke, semi-transparent fills. **Security groups:** Dashed stroke (`stroke-dasharray="4,4"`), transparent fill, rose color. **Region boundaries:** Larger dashed stroke (`stroke-dasharray="8,4"`), amber color, `rx="12"`. **Arrows:** Use SVG marker for arrowheads: ```svg <marker id="arrowhead" markerWidth="10" markerHeight="7" refX="9" refY="3.5" orient="auto"> <polygon points="0 0, 10 3.5, 0 7" fill="#64748b" /> </marker> ``` **Arrow z-order:** Draw connection arrows early in the SVG (after the background grid) so they render behind component boxes. SVG elements are painted in document order, so arrows drawn first will appear behind shapes drawn later. **Masking arrows behind transparent fills:** Since component boxes use semi-transparent fills (`rgba(..., 0.4)`), arrows behind them will show through. To fully mask arrows, draw an opaque background rect (e.g., `fill="#0f172a"`) at the same position before drawing the semi-transparent styled rect on top: ```svg <!-- Opaque background to mask arrows --> <rect x="X" y="Y" width="W" height="H" rx="6" fill="#0f172a"/> <!-- Styled component on top --> <rect x="X" y="Y" width="W" height="H" rx="6" fill="rgba(76, 29, 149, 0.4)" stroke="#a78bfa" stroke-width="1.5"/> ``` **Auth/security flows:** Dashed lines in rose color (`#fb7185`). **Message buses / Event buses:** Small connector elements between services. Use orange color (`#fb923c` stroke, `rgba(251, 146, 60, 0.3)` fill): ```svg <rect x="X" y="Y" width="120" height="20" rx="4" fill="rgba(251, 146, 60, 0.3)" stroke="#fb923c" stroke-width="1"/> <text x="CENTER_X" y="Y+14" fill="#fb923c" font-size="7" text-anchor="middle">Kafka / RabbitMQ</text> ``` ### Spacing Rules **CRITICAL:** When stacking components vertically, ensure proper spacing to avoid overlaps: - **Standard component height:** 60px for services, 80-120px for larger components - **Minimum vertical gap between components:** 40px - **Inline connectors (message buses):** Place IN the gap between components, not overlapping **Example vertical layout:** ``` Component A: y=70, height=60 → ends at y=130 Gap: y=130 to y=170 → 40px gap, place bus at y=140 (20px tall) Component B: y=170, height=60 → ends at y=230 ``` **Wrong:** Placing a message bus at y=160 when Component B starts at y=170 (causes overlap) **Right:** Placing a message bus at y=140, centered in the 40px gap (y=130 to y=170) ### Legend Placement **CRITICAL:** Place legends OUTSIDE all boundary boxes (region boundaries, cluster boundaries, security groups). - Calculate where all boundaries end (y position + height) - Place legend at least 20px below the lowest boundary - Expand SVG viewBox height if needed to accommodate **Example:** ``` Kubernetes Cluster: y=30, height=460 → ends at y=490 Legend should start at: y=510 or below SVG viewBox height: at least 560 to fit legend ``` **Wrong:** Legend at y=470 inside a cluster boundary that ends at y=490 **Right:** Legend at y=510, below the cluster boundary, with viewBox height extended ### Layout Structure 1. **Header** - Title with pulsing dot indicator, subtitle, and export toolbar 2. **Main SVG diagram** - Contained in rounded border card 3. **Summary cards** - Grid of 3 cards below diagram with key details 4. **Footer** - Minimal metadata line ### Export Toolbar (built-in) Every diagram ships with a single unobtrusive `⋯` toggle in the header. Click it to reveal three buttons — 📋 Copy (high-DPI PNG to clipboard, scale: 2), 🖼️ PNG (high-DPI PNG download), 📄 PDF (PNG embedded in a one-page PDF via jsPDF). The toolbar collapses back to the icon by default so it doesn't clutter the diagram. All three formats use the same html2canvas capture (with the toolbar excluded and 32px padding around the content), so PDF preserves the dark theme without going through the browser's print dialog. When generating a new diagram, keep these intact in the template:
From AK12-Official/zh-skill, MIT.
Signals
- Stars
- 2
- Forks
- 1
- Open issues
- 0
- Last commit (this folder)
- Aug 26, 2026 (2 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/AK12-Official/zh-skill
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
More from AK12-Official
Cite this page
architecture-diagram skill. Agent Mart. https://agentmart.dev/skills/ak12-official-architecture-diagram (last updated 2026-10-24)