authoring-design-system

Design System Assembly

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 "authoring-design-system" with this command: npx skills add deepeshbodh/human-in-loop/deepeshbodh-human-in-loop-authoring-design-system

Design System Assembly

Overview

Synthesize individual screenshot extractions produced by humaninloop:analysis-screenshot into a unified, coherent design system. Every token in the final system traces back to its source screenshot, every conflict is documented with resolution rationale, and the output is implementation-ready.

When to Use

  • Multiple screenshot extractions exist and need merging into one system

  • Token consolidation required across color, typography, spacing, and elevation

  • Component variants from different sources need harmonizing

  • Building a unified design system from visual inspiration across apps

  • Preparing implementation-ready token definitions from merged extractions

When NOT to Use

  • Only one screenshot extraction exists (no merging needed -- use the extraction directly)

  • Designing from scratch without reference screenshots (use humaninloop:patterns-interface-design )

  • Extractions have not been completed yet (run humaninloop:analysis-screenshot first)

  • Implementing an already-defined design system (no synthesis needed)

Prerequisites

REQUIRED: Run humaninloop:analysis-screenshot on each reference screenshot before invoking this skill. Each extraction provides the raw material for assembly.

Gather all extraction documents. Each extraction should contain: color palette, typography scale, spacing scale, component catalog, layout structure, and border/elevation system.

Phase 1: Extraction Inventory

Before merging anything, catalog what exists.

Process

  • List every extraction by source name (e.g., "Linear dashboard," "Stripe checkout," "Notion sidebar")

  • For each extraction, note what token categories are present and what is marked as a gap

  • Identify overlap -- which categories appear in multiple extractions

  • Identify unique contributions -- tokens or components present in only one source

Output Format

EXTRACTION INVENTORY

Source 1: [Name] Platform: [platform] Color tokens: [count] | Typography levels: [count] | Spacing values: [count] Components: [list] Gaps: [list]

Source 2: [Name] ...

OVERLAP MATRIX: Colors: Sources [1, 2, 3] — merge required Typography: Sources [1, 3] — merge required Spacing: Sources [1, 2] — merge required Components: Sources [1, 2, 3] — normalization required Elevation: Source [2] only — adopt directly

UNIQUE CONTRIBUTIONS: Source 1: [specific tokens or components only this source provides] Source 2: [specific tokens or components only this source provides]

Phase 2: Token Consolidation

Merge color palettes, typography scales, and spacing scales from all sources into unified scales.

Color Consolidation

  • Collect all neutrals -- List every background, surface, border, and text color from every source. Group by role (background-base, background-elevated, text-primary, etc.).

  • Identify near-duplicates -- Colors within delta-E 3.0 of each other serving the same role are candidates for merging. Choose the value that best serves the intended palette temperature.

  • Resolve conflicts -- When two sources assign different colors to the same role (e.g., different background-base values), document both and select one. Record the rationale.

  • Build unified palette -- Assign every color a single canonical name. Attribute each to its source.

UNIFIED COLOR PALETTE

NEUTRALS: bg-base: #1A1A2E (from: Source 1 — Notion dark mode) bg-elevated: #222240 (from: Source 2 — Linear cards) bg-surface: #2A2A4A (derived: midpoint between Source 1 and Source 2) ...

CONFLICTS RESOLVED: bg-base: Source 1 used #1A1A2E, Source 2 used #1C1C1C Decision: Adopted Source 1 value — warmer tone aligns with brand direction

Typography Consolidation

  • Align scales -- Map each source's type levels to a common naming convention (display, h1, h2, h3, body, caption, label, overline).

  • Resolve size conflicts -- When sources disagree on a level's size, favor the value from the source whose overall scale has better mathematical consistency (e.g., major third ratio).

  • Unify font families -- Select one primary, one monospace. Document alternatives considered.

  • Unify weights -- Build a single weight scale covering all needed weights across sources.

Spacing Consolidation

  • Identify base units -- Note each source's base unit (4px, 8px, etc.).

  • Standardize -- Choose one base unit. If sources disagree, prefer the value that produces the most consistent scale.

  • Merge scales -- Combine all spacing values into a single scale. Eliminate redundant values within 1px of each other.

  • Validate coverage -- Ensure the unified scale covers micro (2-4px), component (8-16px), section (24-48px), and layout (64px+) ranges.

Phase 3: Component Normalization

Harmonize component variants from different sources into a consistent library.

Process

  • Build a component union -- List every component type that appears in any extraction.

  • Merge variants -- For components that appear in multiple sources, merge variant lists. Remove duplicates.

  • Retoken components -- Replace each component's original color, spacing, and typography references with the unified tokens from Phase 2.

  • Resolve style conflicts -- When sources use different border-radii, padding, or styling for the same component type, document the options and choose one.

  • Assign component tokens -- Each component references only unified system tokens. No hard-coded values.

Output Format

COMPONENT: Button Sources: [Source 1, Source 3] Variants: primary, secondary, ghost, icon-only Resolved tokens: Height: var(--space-xl) (40px) Padding: var(--space-xs) var(--space-md) Border radius: var(--radius-md) Font: var(--font-size-label) / var(--font-weight-medium) Colors: Primary BG: var(--color-brand-primary) Primary text: var(--color-text-inverse) Secondary BG: var(--color-bg-elevated) Conflict notes: Source 1 used 8px radius, Source 3 used 12px. Decision: 8px — matches the overall compact density.

Phase 4: Hierarchy Establishment

Define primary/secondary/tertiary relationships across the entire system.

Color Hierarchy

Level Purpose Example Assignment

Primary Main actions, brand expression Brand color for buttons, links

Secondary Supporting actions, alternative paths Muted brand for secondary buttons

Tertiary Background accents, hover states Tinted surfaces

Neutral Content, structure, text Gray scale for text and borders

Semantic Status communication Success, warning, error, info

Typography Hierarchy

Level Role Tokens

Display Hero content, landing sections Largest size, heaviest weight

Heading Section titles, page headers h1 through h3

Body Primary content, descriptions Standard reading size

UI Labels, buttons, inputs Slightly smaller, medium weight

Caption Metadata, timestamps, help text Smallest, muted color

Spacing Hierarchy

Context Scale Range Application

Component internals 2xs through sm Icon gaps, input padding, tight pairs

Between elements sm through lg Form fields, button groups, list items

Section separation lg through 2xl Content sections, card groups

Layout structure 2xl through 3xl Page margins, major divisions

Phase 5: Conflict Resolution

All conflicts identified during Phases 2-4 MUST be documented in a single conflict log.

Conflict Log Format

CONFLICT LOG

ID: C-001 Category: Color Description: Background base color differs between sources Source 1: #1A1A2E (warm dark blue) Source 2: #1C1C1C (neutral dark gray) Resolution: Adopted #1A1A2E Rationale: Warm undertone creates more inviting feel; neutral gray reserved for elevated surfaces to create natural contrast hierarchy.

ID: C-002 Category: Spacing Description: Base unit differs between sources Source 1: 4px base Source 3: 8px base Resolution: Adopted 8px base Rationale: 8px produces fewer fractional values at standard component sizes; 4px granularity available through 0.5x multiplier where needed.

Mark every conflict with a unique ID. Reference these IDs in the final system documentation when a token's origin involves a resolved conflict.

Phase 6: System Documentation

Produce the final design system document.

Required Sections

  • System Overview -- Name, purpose, sources, design philosophy

  • Color System -- Full palette organized by role, with source attribution

  • Typography System -- Font families, type scale, weight scale, line heights

  • Spacing System -- Base unit, full scale, usage guidelines

  • Border and Elevation -- Radii, shadows, border treatments, depth strategy

  • Component Library -- Each component with tokens, variants, and states

  • Source Attribution Index -- Every token traced to its origin screenshot

  • Conflict Resolution Log -- Full log from Phase 5

  • Known Gaps -- Aggregated gaps from all extractions plus assembly-stage gaps

Source Attribution Index Format

SOURCE ATTRIBUTION INDEX

Token Source Conflict? ──────────────────────── ─────────────── ───────── --color-brand-primary Source 1 No --color-bg-base Source 1 C-001 --color-bg-elevated Source 2 No --font-family-primary Source 1 No --space-base Source 3 C-002 --radius-md Source 1 C-003

Phase 7: Implementation Mapping

Translate the unified system into code-ready formats. See references/implementation-output-templates.md for complete templates.

Required Outputs

Produce at least ONE of the following based on the target platform:

Platform Output

Web (vanilla) CSS custom properties on :root

Web (Tailwind) tailwind.config.js theme extension

iOS SwiftUI DesignTokens enum

Android Compose Theme.kt tokens

Cross-platform All applicable formats

Mapping Rules

  • Every token in the implementation MUST reference the system documentation name

  • Comments in code MUST include the source attribution (e.g., /* from: Linear dashboard */ )

  • Tokens not observed in any screenshot MUST NOT be fabricated -- leave placeholders explicit

  • Group tokens by category matching the system documentation structure

Common Mistakes

Mistake Fix

Merging colors without checking delta-E proximity Compare colors numerically; near-duplicates within delta-E 3.0 should merge

Dropping source attribution during consolidation Carry attribution through every phase; final system traces every token to a screenshot

Choosing one source's tokens wholesale and ignoring others Evaluate each token category independently; best values may come from different sources

Resolving conflicts without documenting rationale Every conflict resolution needs a written justification in the conflict log

Creating components with hard-coded values instead of system tokens Every component value must reference a unified token; no magic numbers

Skipping the gaps section because "the system is complete" Aggregate gaps from all extractions; assembly introduces additional gaps (e.g., untested combinations)

Producing implementation code without source comments Code-level comments connect tokens back to design decisions and source screenshots

Treating spacing from different sources as additive instead of deduplicating Merge overlapping values; the unified scale should be smaller than the sum of all source scales

Quality Checklist

Before delivering the assembled design system:

Inventory:

  • All source extractions cataloged with platform and token counts

  • Overlap matrix identifies merge points

  • Unique contributions from each source noted

Consolidation:

  • Color palette unified with roles assigned and near-duplicates merged

  • Typography scale uses consistent naming and mathematical ratios

  • Spacing scale has a single base unit with full range coverage

  • Border radii and shadow values unified

Normalization:

  • Every component uses unified system tokens only (no hard-coded values)

  • Component variant lists merged across sources

  • Style conflicts resolved and documented

Hierarchy:

  • Color hierarchy (primary through semantic) established

  • Typography hierarchy (display through caption) defined

  • Spacing hierarchy (component through layout) mapped

Transparency:

  • Every token has source attribution

  • Conflict log covers all disagreements between sources

  • Known gaps aggregated from all extractions

  • No fabricated values for unobserved properties

Implementation:

  • At least one code-ready output produced

  • Code comments include source attribution

  • Token names in code match system documentation names

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

authoring-constitution

No summary provided by upstream source.

Repository SourceNeeds Review
General

authoring-requirements

No summary provided by upstream source.

Repository SourceNeeds Review
General

patterns-technical-decisions

No summary provided by upstream source.

Repository SourceNeeds Review