moai-domain-design-dna

Extracts a reference design into a Design DNA JSON and generates self-contained artifacts from it.

1.2k|222|Updated Sep 16, 2025
One-click install
npx skills add https://github.com/modu-ai/moai-adk --skill moai-domain-design-dna
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: moai-domain-design-dna
Source: https://github.com/modu-ai/moai-adk/tree/main/internal/template/templates/.claude/skills/moai-domain-design-dna
Command: npx skills add https://github.com/modu-ai/moai-adk --skill moai-domain-design-dna

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Recreating an existing design from a screenshot or URL usually relies on memory and impression, producing drifted palettes, flattened rhythm, and missing signature effects. This Skill inserts a structured Design DNA JSON between looking and building, so every colour, radius, and easing curve in the output traces to a recorded field.

Core Features & Use Cases

  • Three-dimension extraction: Deconstructs screenshots, image sets, videos, or live URLs into measurable design tokens, qualitative style fields, and special-rendering effects with dominance-based colour roles and relative radius measurement.
  • Profile persistence: Saves completed DNA JSON as named profiles in a project-root .design-dna/ store with marker-first active-profile resolution, slug grammar, and schema validation on load.
  • Tiered effects generation: Maps Canvas, WebGL, shader, and scroll effects to a performance-tier technology map, then generates a self-contained HTML artifact with a delivery gate covering contrast, reduced motion, and animation-loop hygiene.
  • Use Case: Point the Skill at a competitor's landing page URL, extract its Design DNA profile, save it as checkout-refresh, then generate a new self-contained page in that style for your own product.

Quick Start

Analyze this screenshot and extract its design tokens into a Design DNA JSON, then generate a self-contained HTML page in the same style.

Frequently Asked Questions about moai-domain-design-dna

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I extract design tokens from a website screenshot?

Provide the screenshot directly and the Skill analyzes its visual properties into a Design DNA JSON. Colour roles are assigned by area dominance, radius is measured relative to element height, and type scale is inferred from heading-to-body ratios rather than absolute pixel sizes.

How do I recreate a web page design from a URL?

Fetch the page and read its source for stated facts like canvas elements, WebGL contexts, shader imports, and scroll triggers, which are more reliable than screenshot inference. The extracted profile then drives generation of a self-contained HTML artifact with inline CSS and JS.

Can I save and reuse a design profile across sessions?

Yes, completed DNA JSON can be saved as a named profile in a project-root .design-dna/ directory with a one-line active marker file. Later generations load the active profile in place, validate it against the schema, and backfill missing fields with explicit not-observed values.

What rendering technology is used for visual effects like particles or shaders?

Technology follows the recorded performance tier: lightweight effects use CSS and SVG, medium effects use Canvas 2D or animation libraries, and heavy effects use WebGL or custom GLSL. Heavy-tier libraries load from a pinned CDN version inside the self-contained artifact.

When should I not use design DNA extraction?

Do not use it for markdown report rendering, static architecture diagrams, or charts and dashboards, which belong to other skills. It also does not apply when a design is authored from first principles rather than deconstructed from an existing reference.

Why does a generated page fail accessibility checks after adding effects?

Contrast must be verified against the rendered result, not token values, whenever an effect sits between text and its background. The delivery gate also requires honoured prefers-reduced-motion support and requestAnimationFrame-driven loops instead of setInterval.