architecture

Create layered system architecture diagrams using HTML/CSS templates with color-coded tiers and grid layouts. Best for technology stacks, microservices topology, and multi-tier application design.

By markdown-viewer · 3,706 installs

npx skills add markdown-viewer/skills --skill architecture

Source repository · Upstream listing

Architecture Diagram Generator Quick Start: Create HTML structure with flexible layout (single/double/triple column) → Define CSS styles for layers and grids → Add content with categorized panels → Use semantic colors for different layers. Critical Rules Rule 1: Direct HTML Embedding IMPORTANT : Write architecture diagrams as direct HTML in Markdown. NEVER use code blocks ( css .arch product group { display: flex; gap: 10px; } .arch product { flex: 1; border radius: 8px; padding: 10px; background: rgba(255, 255, 255, 0.6); border: 1px dashed d97706; } .arch product title { font size: 12px; font weight: bold; color: 92400e; margin bottom: 8px; text align: center; } .arch subgroup { display: flex; gap: 8px; margin top: 8px; } .arch subgroup box { flex: 1; border radius: 6px; padding: 8px; background: rgba(255, 255, 255, 0.5); border: 1px solid rgba(0, 0, 0, 0.08); } .arch subgroup title { font size: 10px; font weight: bold; color: 374151; text align: center; margin bottom: 6px; } .arch user types { display: flex; gap: 4px; justify content: center; margin top: 6px; } .arch user tag { font size: 9px; padding: 2px 6px; border radius: 10px; background: rgba(59, 130, 246, 0.15); color: 1d4ed8; } / SVG connector lines between components / .arch conn { stroke: 94a3b8; stroke width: 1.5; fill: none; } .arch conn dashed { stroke: 94a3b8; stroke width: 1.5; fill: none; stroke dasharray: 6 4; } .arch conn label { font size: 9px; fill: 64748b; font family: sans serif; } html <div class="arch product group" <div class="arch product" <div class="arch product title" 🎯 Product A</div <div class="arch grid arch grid 2" <div class="arch box" Feature 1<br <small Description</small </div <div class="arch box highlight" Feature 2<br <small Key Feature</small </div </div </div <div class="arch product" <div class="arch product title" 📊 Product B</div <div class="arch grid arch grid 2" <div class="arch box" Feature 3<br <small Description</small </div <div class="arch box" Feature 4<br <small Description</small </div </div </div </div html <div class="arch subgroup" <div class="arch subgroup box" <div class="arch subgroup title" Component Group A</div <div class="arch grid arch grid 3" <div class="arch box tech" Service 1<br <small Details</small </div <div class="arch box tech" Service 2<br <small Details</small </div <div class="arch box tech" Service 3<br <small Details</small </div </div </div <div class="arch subgroup box" <div class="arch subgroup title" Component Group B</div <div class="arch grid arch grid 2" <div class="arch box tech" Service 4<br <small Details</small </div <div class="arch box tech" Service 5<br <small Details</small </div </div </div </div html <div class="arch user types" <span class="arch user tag" Admin Users</span <span class="arch user tag" End Users</span <span class="arch user tag" API Clients</span <span class="arch user tag" Partners</span </div html <div class="arch sidebar item metric" 99.9% Uptime</div <div class="arch sidebar item metric" &lt;200ms Response</div <div class="arch sidebar item metric" 1M+ Users</div html <! Wrap diagram content in a relative container <div style="position: relative;" <! ...layers and components here... <! SVG overlay as last child <svg style="position: absolute; top: 0; left: 0; width: 100%; height: 100%; pointer events: none; overflow: visible;" <defs <marker id="arrowhead" markerWidth="8" markerHeight="6" refX="8" refY="3" orient="auto" <path d="M0,0 L8,3 L0,6" fill="none" stroke=" 94a3b8" stroke width="1"/ </marker </defs <! Orthogonal solid arrow (vertical → horizontal → vertical) <path d="M 200,72 L 200,90 L 400,90 L 400,108" class="arch conn" marker end="url( arrowhead)"/ <! Orthogonal dashed line <path d="M 600,72 L 600,90 L 600,90 L 600,108" class="arch conn dashed" marker end="url( arrowhead)"/ <! Label <text x="420" y="86" class="arch conn label" data flow</text </svg </div html code blocks 2. No empty lines in structure — Keep the entire HTML block continuous without any empty lines 3. Incremental development — Build diagrams step by step: Start with basic framework and layout structure (single/two/three column as needed) Add empty layer containers with proper CSS classes Fill in content layer by layer from top to bottom Refine content and add highlights last Architecture Design 1. Keep layers logically separated — Each layer should represent a clear architectural tier 2. Use consistent naming — Follow naming conventions for components and services 3. Highlight key components — Use .highlight class for critical components 4. Add technical details — Include technology stack info in <small tags 5. Balance information density — Don't overcrowd components with text 6. Use icons sparingly — Add emojis to titles for visual hierarchy 7. Maintain color semantics — Stick to the established color meanings 8. Consider responsive design — Grids automatically adapt to content