tech-visualizer

Create interactive, animated visualizations of technical and algorithmic concepts. Use this skill whenever the user asks to visualize, illustrate, explain visually, or create a diagram/animation for any technical concept — including but not limited to: cryptographic algorithms (HMAC-SHA, AES-CBC, RSA, TLS handshake), computer vision pipelines (ORB keypoints, SIFT, optical flow, convolutions), networking protocols (TCP handshake, DNS resolution, HTTP/2 streams), data structures (B-trees, hash maps, bloom filters), ML concepts (backpropagation, attention mechanism, gradient descent), or any algorithmic/engineering process. Also trigger when the user says "show me how X works", "animate X", "interactive explainer for X", or wants to turn a technical concept into a presentation-ready visual. This skill produces polished, interactive artifacts — not static diagrams.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "tech-visualizer" with this command: npx skills add yfe404/tech-visualizer/yfe404-tech-visualizer-tech-visualizer

Tech Visualizer

Create stunning, interactive visualizations that turn complex technical concepts into intuitive, explorable experiences. Every visualization should make the viewer think "now I finally get it."

When to Read Reference Files

Before building, read the appropriate reference:

  • references/patterns.md — Visualization component patterns, layout strategies, and interaction blueprints. Always read this first.

Design Philosophy

The "Aha Moment" Principle

Every visualization must have a clear aha moment — the single interaction or animation that makes the concept click. Identify it before writing any code.

Examples:

  • HMAC-SHA: Seeing the inner and outer padding XOR with the key, then watching data flow through the two hash rounds
  • AES-CBC: Watching the XOR chain where each block's ciphertext feeds into the next block's encryption — showing WHY changing one plaintext block cascades
  • ORB keypoints: Seeing the FAST corner detector sweep across an image, lighting up detected corners, then watching BRIEF descriptors form as binary comparison patterns

Visual Identity

Every visualization should feel like a premium interactive textbook illustration, not a generic flowchart. Think: 3Blue1Brown meets an interactive data dashboard.

Core aesthetic principles:

  • Dark theme by default with vibrant, high-contrast accent colors for data flow
  • Monospace fonts for data/hex values, clean sans-serif for labels
  • Purposeful animation — every motion represents actual data transformation
  • Depth through layering — use subtle shadows, glassmorphism, or gradients to separate conceptual layers (e.g., application layer vs transport layer)
  • Color encodes meaning — establish a color legend early: input data, keys, intermediate state, output. Keep it consistent throughout

Output Format Decision

Choose based on complexity:

ComplexityFormatWhen
Single algorithm, linear flowHTML (.html)HMAC, SHA-256, base64 encoding
Multi-stage with rich stateReact (.jsx)AES-CBC, TLS handshake, TCP state machine
Comparison / side-by-sideReact (.jsx)ECB vs CBC, RSA vs ECC, BFS vs DFS
Data structure with mutationsReact (.jsx)B-tree insertion, hash table collision

When in doubt, use React — it handles state management for interactive controls more cleanly.

Building a Visualization

Step 1: Decompose the Concept

Break the technical concept into stages that can be individually visualized:

Concept → [ Stage 1 ] → [ Stage 2 ] → ... → [ Stage N ]
                ↓              ↓                    ↓
           Visual repr    Visual repr          Visual repr

Each stage should have a clear input/output shown visually, transform data in a way that can be animated, and connect to the previous stage with a visible data flow line.

Step 2: Design the Interaction Model

Layer these interaction types (use ALL that apply):

  1. Step-by-step controls: Play/pause, step forward/back, speed slider. This is the primary navigation. Use a prominent step indicator (e.g., "Step 3 of 7: XOR with round key").

  2. Live input fields: Let users type their own plaintext, key, URL, etc. The entire visualization should reactively update. Use debounced inputs to avoid jank.

  3. Hover/click inspection: Hovering over any data block, wire, or intermediate value should show a tooltip or panel with the raw data, hex representation, or explanation. Clicking can "pin" the inspection panel.

  4. Side-by-side comparison: When the concept has variants (ECB vs CBC, HTTP/1.1 vs HTTP/2), show them simultaneously with synchronized step controls.

Step 3: Implement with Polish

Read references/patterns.md for detailed layout templates, animation patterns, and data representation strategies for each concept category.

Key principles:

  • Top-to-bottom or left-to-right flow mirroring the algorithm's mental model
  • Staggered reveals: Animate data blocks appearing 30-50ms apart
  • Active element highlighting: Pulse/glow for current, dim for completed, base opacity for upcoming
  • Data flow lines: Animate SVG paths with stroke-dashoffset for "drawing" effects
  • Transition duration: 300-500ms for state changes, 150ms for hover effects

Step 4: Add Context & Learning

  • Step descriptions: Each step must have a 1-2 sentence plain-English explanation visible alongside the visualization (not just in tooltips)
  • "Why does this matter?" callouts: At key stages, add a subtle info box explaining the security/performance/correctness implication
  • Edge case demonstrations: Add buttons like "What if the key is all zeros?" or "What happens with identical plaintext blocks?" that demonstrate important properties

Step 5: Responsive & Accessible

  • Works at 768px+ width (optimized for desktop, functional on tablet)
  • aria-label on interactive elements
  • Keyboard navigation for step controls (arrow keys)
  • Color is not the only differentiator (use shape/pattern too)

Quality Checklist

Before delivering, verify:

  • Dark theme with consistent color coding throughout
  • Step-by-step controls (forward, back, play/pause, reset)
  • At least one live input field that reactively updates
  • Hover inspection on data elements
  • Step descriptions visible and accurate
  • Smooth animations (no layout shifts or flicker)
  • Color legend present
  • The "aha moment" is clearly delivered
  • Google Fonts loaded for typography
  • No hardcoded magic numbers without comments

Anti-Patterns to Avoid

  • ❌ Static flowcharts with no interactivity
  • ❌ Walls of text explaining the algorithm — the visualization IS the explanation
  • ❌ Generic bootstrap/material UI appearance
  • ❌ Tooltips as the only information pathway — key details should be always visible
  • ❌ Animations that don't map to real data transformations
  • ❌ Light theme with muted pastels (dark + vibrant is the default)
  • ❌ Skipping the decomposition step — always plan stages before coding

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

web-scraping

No summary provided by upstream source.

Repository SourceNeeds Review
General

frida-17

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

frida-mcp-workflow

No summary provided by upstream source.

Repository SourceNeeds Review