From armory
Generates layered architecture diagrams as self-contained HTML with inline SVG icons, CSS Grid zones, and JS-driven connection overlays. For system, infra, deployment, and topology diagrams.
npx claudepluginhub mathews-tom/armory --plugin armoryThis skill uses the workspace's default tool permissions.
Produces self-contained `.html` files: inline SVG icons, CSS Grid nested zones, JS-driven SVG connection overlay with color-coded semantic line types and arrowhead markers. Zero external dependencies.
Implements Playwright E2E testing patterns: Page Object Model, test organization, configuration, reporters, artifacts, and CI/CD integration for stable suites.
Guides Next.js 16+ Turbopack for faster dev via incremental bundling, FS caching, and HMR; covers webpack comparison, bundle analysis, and production builds.
Discovers and evaluates Laravel packages via LaraPlugins.io MCP. Searches by keyword/feature, filters by health score, Laravel/PHP compatibility; fetches details, metrics, and version history.
Produces self-contained .html files: inline SVG icons, CSS Grid nested zones, JS-driven SVG connection overlay with color-coded semantic line types and arrowhead markers. Zero external dependencies.
references/icons.md — select or create icons for each componentreferences/layout-patterns.md — choose topology pattern, set grid-template-columnsreferences/connections.md — define connection array with types, side-forcing, routingassets/template.html — use its CSS/JS structure as the base{{DIAGRAM_TITLE}}, {{BG_COLOR}}, {{MAX_WIDTH}}{{LEGEND_ITEMS}} — one entry per connection type useddiv.zone > span.zone-label + div.zone-contentdata-node-id, each containing: .node-icon (inline SVG), .node-title, .node-descconnections JS array.html to the working directory or user-specified pathEvery node must have:
data-node-id (semantic: fusion-hcm, edi-adaptor, not node-7).node-icon with inline SVG from the icon registry (or custom-generated following registry constraints).node-title — short name (1–3 words, bold).node-desc — extended description text (protocols, module lists, capabilities). Populate this whenever the user provides detail beyond just a name. This is critical for professional-quality diagrams.div.zone has exactly one span.zone-label and one div.zone-contentdiv.zone-content has explicit style="grid-template-columns: ..."zone-depth-0 to zone-depth-3) matches actual nesting level.node-icon — no external image references<defs> (arrow markers for each color) sits after the diagram div<script> is last before </body>Match connection semantics to the appropriate type:
realtime (blue solid): REST, SOAP, API calls, synchronous requests, real-time databatch (red dashed): SFTP, file transfers, EDI, scheduled batch jobs, bulk dataevent (green solid): event-driven triggers, pub-sub, webhooks, callbacks, business eventscontrol (orange dashed): management plane, monitoring, config push, admin flowsdefault (blue solid): when semantic type is ambiguous or only one flow type existsWhen the user doesn't specify flow semantics, default all connections to default type and omit the legend.
#f0ece4 (warm neutral) or #e8eef5 (cool blue-gray) — choose based on provider/context--icon-color: #3a3a3a (or provider-specific)default connections and no legend if flow types are unspecified| Problem | Cause | Fix |
|---|---|---|
assets/template.html missing | File deleted or skill directory incomplete | Regenerate from skill defaults: reconstruct the CSS/JS skeleton using the structure documented in this SKILL.md and the reference files |
Icon reference not found in references/icons.md | Component type not in the registry | Fall back to the generic box icon defined in references/icons.md § Generic Fallback; log the missing icon name in a comment |
| Connection lines overlap or route through nodes | Dense graph with auto-routing conflicts | Adjust zone layout: increase grid-template-columns spacing, add intermediate waypoint nodes, or use side-forcing attributes from references/connections.md |
| Playwright render failure during HTML-to-image export | Chromium not installed or script error | Run playwright install chromium; check browser console via --headed flag; verify no JS syntax errors in the connection renderer script |
| Zone nesting exceeds depth-3 styling | Architecture has more than 4 containment levels | Flatten by combining the deepest two levels into a single zone, or split into two separate diagrams linked by description |
references/icons.md — 28+ SVG icon definitions, custom icon rules, provider color tablereferences/layout-patterns.md — node structure, zone nesting, 5 topology patterns, interior grid guidance, sizing tablereferences/connections.md — connection schema, 6 semantic types with colors, side-forcing, route modes, legend markupassets/template.html — complete HTML skeleton: CSS, legend, zone/node styles, marker defs for all colors, connection renderer JS with auto side-detection