Skip to content
cccskills
FreePublished on GitHub

technical-svg-diagrams

Generate clean, minimal technical SVG diagrams in a consistent Cloudflare-inspired style. Use when creating architecture diagrams, flow diagrams, or component diagrams for blog posts and documentation.

The English summary is being prepared. Showing the original description.

Works withCloudflare
See how to install

Files included (2)

  • SKILL.md6.1 KB
  • references/svg-patterns.md9.4 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

<objective> Generate technical SVG diagrams with consistent styling for blog posts and documentation. All diagrams use a unified visual language: grid backgrounds, monospace fonts, muted colors with semantic accents, and clean geometric shapes. </objective>

<quick_start>

  1. Identify diagram type needed (architecture, flow, or component)
  2. Read references/svg-patterns.md for templates and color palette
  3. Generate SVG using the established patterns
  4. Save to target directory with descriptive filename </quick_start>

<design_system>

Color Palette

PurposeColorHex
BackgroundLight gray#fafafa
Grid linesSubtle gray#e5e5e5
Primary textDark gray#333
Secondary textMedium gray#666
Muted textLight gray#999
Borders/arrowsGray#ccc
Success/positiveGreen#27ae60
Error/negativeRed#e74c3c
Primary accentBlue#3498db
Warning/sandboxOrange#f39c12
Process stepPurple#9b59b6

Typography

  • Font family: monospace for all text
  • Title: 14px bold, #333
  • Subtitle/tag: 12px, #888, in brackets [ LIKE_THIS ]
  • Labels: 10-11px, color matches element
  • Notes: 7-8px, #999

Common Elements

Grid background:

<pattern id="grid" width="20" height="20" patternUnits="userSpaceOnUse">
  <path d="M 20 0 L 0 0 0 20" fill="none" stroke="#e5e5e5" stroke-width="0.5"/>
</pattern>

Arrow marker:

<marker id="arrow" markerWidth="10" markerHeight="10" refX="9" refY="3" orient="auto">
  <path d="M0,0 L0,6 L9,3 z" fill="#ccc"/>
</marker>

Node (circle with inner dot):

<circle cx="X" cy="Y" r="35" fill="none" stroke="#ccc" stroke-width="2"/>
<circle cx="X" cy="Y" r="18" fill="#COLOR"/>

Box container:

<rect x="X" y="Y" width="W" height="H" fill="none" stroke="#ccc" stroke-width="2"/>

Dashed container (sandbox/isolation):

<rect x="X" y="Y" width="W" height="H" fill="none" stroke="#f39c12" stroke-width="2" stroke-dasharray="5,3"/>

Label box:

<rect x="X" y="Y" width="W" height="H" fill="none" stroke="#ccc" stroke-width="1"/>
<text x="CX" y="CY" font-family="monospace" font-size="11" fill="#666" text-anchor="middle">LABEL_NAME</text>

</design_system>

<diagram_types>

Architecture Diagrams

Horizontal left-to-right flow showing system components.

Use for: Before/after comparisons, system overviews, data flow

Structure:

  • Title + tag at top left
  • Components flow left to right
  • Arrows connect components
  • Bottom note summarizes key point

Dimensions: 800x350 to 800x400

Flow Diagrams

Vertical top-to-bottom showing process steps.

Use for: Execution flows, request lifecycles, step-by-step processes

Structure:

  • Title + tag at top
  • Dashed vertical guide line
  • Steps connected by arrows with polygon heads
  • Decision diamonds for branching
  • Ellipses for start/end states

Dimensions: 600x700 (adjust height for steps)

Component Diagrams

Focused view of a single component's internals.

Use for: Showing internal structure, nested elements, detailed breakdowns

Structure:

  • Outer container box
  • Inner elements with semantic colors
  • Labels above or below containers </diagram_types>
<process> ## Creating a Diagram
  1. Determine type and dimensions

    • Architecture: 800x350-400, horizontal
    • Flow: 600x700+, vertical
    • Component: varies by content
  2. Set up SVG structure

    <svg viewBox="0 0 WIDTH HEIGHT" xmlns="http://www.w3.org/2000/svg">
      <defs>
        <!-- Grid pattern -->
        <!-- Arrow markers as needed -->
      </defs>
    
      <!-- Background -->
      <rect width="WIDTH" height="HEIGHT" fill="#fafafa"/>
      <rect width="WIDTH" height="HEIGHT" fill="url(#grid)"/>
    
      <!-- Title -->
      <text x="40" y="40" font-family="monospace" font-size="14" fill="#333" font-weight="bold">TITLE</text>
      <text x="X" y="40" font-family="monospace" font-size="12" fill="#888">[ TAG ]</text>
    
      <!-- Content -->
    
      <!-- Bottom note -->
      <text x="CENTER" y="BOTTOM" font-family="monospace" font-size="10" fill="#999" text-anchor="middle">summary note</text>
    </svg>
    
  3. Add components using patterns from references/svg-patterns.md

  4. Connect with arrows

    • Solid lines for primary flow
    • Dashed lines for secondary/return flow
    • Use opacity="0.5" for response arrows
  5. Add labels

    • Component names in SCREAMING_SNAKE_CASE
    • Action labels in lowercase_snake_case
    • Use text-anchor="middle" for centered text
  6. Save with descriptive filename

    • diagram-before.svg, diagram-after.svg
    • diagram-flow.svg, diagram-architecture.svg </process>

<success_criteria> Diagram is complete when:

  • Uses consistent color palette
  • All text is monospace
  • Grid background applied
  • Title with bracketed tag present
  • Components properly connected with arrows
  • Labels are clear and properly positioned
  • Bottom summary note included
  • SVG is valid and renders correctly </success_criteria>

<export_to_webp>

Convert SVG to WebP

After creating the SVG, convert to WebP for universal compatibility.

Using uv (cross-platform, recommended):

uvx --from cairosvg cairosvg diagram.svg -o diagram.png --output-width 1600
uvx --with pillow python -c "from PIL import Image; Image.open('diagram.png').save('diagram.webp', 'WEBP', lossless=True)"
rm diagram.png

Note: lossless=True is best for diagrams - smaller than lossy AND perfect quality.

Alternative tools (if available):

# ImageMagick
convert -background none -density 150 diagram.svg diagram.webp

# librsvg + cwebp
rsvg-convert -w 1600 diagram.svg -o diagram.png && cwebp diagram.png -o diagram.webp

Platform notes:

  • macOS: brew install cairo if cairosvg fails
  • Linux: apt install libcairo2-dev if needed
  • Windows: uv works natively; or use WSL for other tools </export_to_webp>

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

This skill should be used when the user asks about "parallel agents", "background tasks", "run_in_background", "non-blocking agents", "check agent progress", "TaskOutput", "retrieve agent results", or discusses running multiple agents concurrently. Covers patterns for launching agents in background, monitoring progress, and retrieving results.

The English summary is being prepared. Showing the original description.

SomtoUgeh/somto-dev-toolkit2Updated Aug 26, 2026

Creates and manages Biome GritQL custom lint rules to enforce coding patterns. Use when creating linter rules, enforcing code conventions, preventing anti-patterns, or when the user mentions Biome, GritQL, custom lint rules, or AST-based linting.

The English summary is being prepared. Showing the original description.

SomtoUgeh/somto-dev-toolkit2Updated Aug 26, 2026

Transform brain dumps into polished blog posts in Nick Nisi's voice. Use when the user wants to write a blog post with scattered ideas, talking points, and conclusions that need organization into a cohesive narrative with Nick's conversational, authentic, and thoughtful tone.

The English summary is being prepared. Showing the original description.

SomtoUgeh/somto-dev-toolkit2Updated Aug 26, 2026

This skill should be used when implementing features from a PRD spec, tracking implementation progress, or resuming work across sessions. Covers Dex task management for PRD story execution, daily workflows, and skill auto-loading.

The English summary is being prepared. Showing the original description.

SomtoUgeh/somto-dev-toolkit2Updated Aug 26, 2026

This skill should be used when the user asks for "browser tests", "playwright tests", "end-to-end testing", "test user flows", "E2E coverage", "integration tests for UI", "page object pattern", "/e2e command", or discusses automated browser testing. Covers the E2E test loop workflow, Playwright patterns, page objects, and selector strategies.

The English summary is being prepared. Showing the original description.

SomtoUgeh/somto-dev-toolkit2Updated Aug 26, 2026

gwt

Free

Manage git worktrees using a centralized worktrees folder. Use for parallel development, PR reviews, or isolated work.

The English summary is being prepared. Showing the original description.

SomtoUgeh/somto-dev-toolkit2Updated Aug 26, 2026

See all skills by SomtoUgeh

Report a problem with this skill