Visual dna
Skill LeoStehlik/visual-dna
Extract visual identity into reusable Design DNA JSON, then apply it to generate faithful UI from references.From its SKILL.md
npx -y skills add LeoStehlik/visual-dnaAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
4.0 KB, 854 tokens by cl100k_base, as published. Nobody here has run it
Design DNA
Extract visual identity from any reference. Apply it to any content. Reuse it everywhere.
Three phases — use any combination:
- Analyze — screenshots, images, or URLs → Design DNA JSON
- Generate — Design DNA JSON + your content → faithful implementation
- Structure — show the full schema when asked
Read references/schema.md for the full field list.
Read references/generation-guide.md for generation rules.
Activation Boundary
Use this skill only when the user explicitly asks for visual DNA extraction, style analysis, brand/design-system extraction, or generation from an existing Design DNA JSON. Do not activate it for generic UI tasks unless the user supplied references or asked to match a reference.
When URLs or assets are supplied, use the references the user provided or assets already present in the project. Report which references were used. Do not try to judge ownership, sensitivity, or permission to analyze a reference; that is a human decision. Ask only when the reference itself is ambiguous, unavailable, or requires credentials you do not have.
The Three Dimensions
| Dimension | What it captures |
|---|---|
| design_system | Measurable tokens: colour, typography, spacing, layout, shape, elevation, motion, components |
| design_style | Qualitative feel: mood, visual language, composition, brand voice, interaction personality |
| visual_effects | Special rendering: Canvas, WebGL, particles, shaders, scroll effects, SVG animation |
Phase 1: Analyze
When the user provides screenshots, images, or URLs:
- Read
references/schema.md— know every field before starting - For each reference: analyze or fetch and analyze
- Fill every field — no empty strings, no guesswork flagged as guesswork
- When references conflict: note the dominant pattern, mention variants
- Output complete Design DNA JSON
- Ask: "Want to adjust any values before generating?"
Key extraction rules:
- Colour: sample dominant palette by area. Primary = largest area, accent = CTA usage
- Typography: identify font class visually (geometric, humanist, serif). Estimate scale ratios from heading/body relationships
- Spacing: assess density by element proximity. Measure section rhythm consistency
- Visual effects: scan for Canvas, WebGL, Three.js, GSAP, particles, shaders, custom cursors. Set
enabled: falsefor anything not present
Phase 2: Generate
When the user provides DNA JSON + content:
- Read
references/generation-guide.md - Build CSS custom properties from
design_systemtokens - Apply
design_stylequalitative fields to subjective decisions - Implement
visual_effectsat the appropriate tech tier (CSS → Canvas → WebGL) - Fetch real assets from original URLs when possible — don't recreate
- Default output: self-contained HTML with inline CSS/JS
Priority order:
- Colour & typography (80% of visual identity)
- Spacing & layout
- Shape & elevation
- Design style qualitative fields
- Visual effects
- Motion & interaction
Quality check before delivering:
- Does it actually look like the reference?
- Are all design tokens applied (not just some)?
- Is the output self-contained (no external dependencies that could break)?
- Do visual effects degrade gracefully without JS?
The DNA JSON as an Asset
The extracted JSON is the key output — not just the generated UI. Once extracted:
- Commit it to version control
- Share it across teams and projects
- Feed it to any agent for any future generation
- Refine it iteratively
This turns "make it look like that site" into a precise, reproducible spec.
Pair with no-slop-ui
When generating UI from DNA:
- Apply
no-slop-uirules alongside DNA tokens - DNA tells you WHAT the design is
no-slop-uitells you what NOT to do (no AI defaults slipping in)- Together: faithful to reference, clean execution
What ships with it: 6 files
21.3 KB alongside SKILL.md
examples/
- sample-design-dna.json8.1 KB
references/
- generation-guide.md4.7 KB
- schema.md3.5 KB