agentsclimarketplace

Design systems

Skill nimadorostkar/Claude-Skills-collection/skills/frontend/design-systems

Use when building or maintaining a component library and design tokens. Covers token architecture, component API design, variants and states, documentation, and governing adoption across a codebase.From its SKILL.md

Install
npx -y skills add nimadorostkar/Claude-Skills-collection --skill design-systems

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 26 days oldThe repository was created 26 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • 23 stars23 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

5.1 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it

Design Systems

Purpose

Build a component library that teams actually adopt: tokens instead of hardcoded values, components with a small honest API, and documentation that answers "which one do I use" without a meeting.

When to Use

  • Starting a design system or component library.
  • Auditing a codebase for inconsistency (fourteen shades of grey, six button implementations).
  • Designing the API of a shared component.
  • Deciding whether a new pattern belongs in the system.

Capabilities

  • Token architecture: primitive, semantic, and component layers.
  • Component API design: variants, sizes, states, composition.
  • Theming, including dark mode and per-brand overrides.
  • Documentation with live examples and usage guidance.
  • Adoption tracking and migration from ad-hoc components.

Inputs

  • The existing visual language, however inconsistent.
  • The consuming applications and their frameworks.
  • The team's appetite for governance — a system nobody enforces will not hold.

Outputs

  • A token set with three layers and no hardcoded values in components.
  • Components with documented variants, states, and accessibility behavior.
  • A contribution and deprecation process.

Workflow

  1. Audit first — Extract every colour, spacing value, font size, and radius currently in use. The count is always shocking, and it is the argument for the system.
  2. Build tokens in layers — Primitives (blue-600) hold raw values. Semantic tokens (color-action-primary) reference primitives and carry meaning. Component tokens (button-bg-primary) reference semantic tokens. Only the primitive layer contains literal values.
  3. Design the component API around variantsvariant, size, state. Not fifteen boolean props whose combinations are mostly invalid.
  4. Cover the states — Default, hover, active, focus-visible, disabled, loading, error. A component missing focus-visible is inaccessible, not merely incomplete.
  5. Document with live examples — Show the correct usage and the incorrect one. "Do / Don't" prevents more misuse than prose.
  6. Govern adoption — A lint rule that forbids hardcoded colours is worth more than a style guide nobody reads.

Best Practices

  • Semantic tokens are what let you re-theme. A component referencing blue-600 directly cannot be themed; one referencing color-action-primary can.
  • Boolean props multiply: isPrimary, isLarge, isDanger allows isPrimary + isDanger, which is meaningless. A variant union makes invalid combinations unrepresentable.
  • Every interactive component needs a visible focus indicator. Removing the outline without replacing it is the most common accessibility failure in design systems.
  • Provide an escape hatch (className, style) but do not design around it. If every consumer overrides the same thing, the component's API is wrong.
  • Version and deprecate properly. Removing a prop without a deprecation cycle breaks consumers you do not know about.
  • A component used by one team is not a design-system component. Promote on the second consumer, not on speculation.

Examples

Three-layer token architecture:

:root {
  /* 1. Primitives — raw values, never used directly by components. */
  --blue-600: #2563eb;
  --blue-700: #1d4ed8;
  --grey-100: #f3f4f6;
  --grey-900: #111827;

  /* 2. Semantic — meaning, referencing primitives. This layer is what themes swap. */
  --color-action-primary: var(--blue-600);
  --color-action-primary-hover: var(--blue-700);
  --color-surface: #ffffff;
  --color-text: var(--grey-900);

  /* 3. Component — scoped to one component, referencing semantic tokens. */
  --button-bg-primary: var(--color-action-primary);
  --button-bg-primary-hover: var(--color-action-primary-hover);
}

[data-theme="dark"] {
  /* Only the semantic layer is redefined. Components need no changes. */
  --color-action-primary: #60a5fa;
  --color-surface: var(--grey-900);
  --color-text: var(--grey-100);
}

Component API: variants, not boolean soup:

type ButtonProps = {
  variant?: "primary" | "secondary" | "ghost" | "danger";
  size?: "sm" | "md" | "lg";
  loading?: boolean;
  disabled?: boolean;
} & ButtonHTMLAttributes<HTMLButtonElement>;

Four variants and three sizes yield twelve valid combinations. Four booleans would yield sixteen, of which most are nonsense.

Notes

  • Enforce token usage with a lint rule (stylelint-declaration-strict-value or an ESLint rule for inline styles). Without enforcement, hardcoded values return within a month.
  • A design system's real adoption metric is the number of hardcoded values remaining in consuming applications, trending toward zero. Track it.
  • Do not build a component until it has two real consumers with the same requirements. Building for a hypothetical second consumer produces an API that fits neither.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Gives 0 of the 12 instructions most architecture codebase skills give in ~1.1k tokens

Counted across 811 of the 1,134 authors here whose files we hold, read 2026-08-07

  • Ask the user which candidate to explorein 45 of 811, across 15 files
  • Apply the deletion test to suspected shallow modulesin 43 of 811, across 15 files
  • Read any relevant architecture decision records firstin 31 of 811, across 8 files
  • Use exact glossary terms in every suggestionin 30 of 811, across 10 files
  • Accept dependencies instead of creating themin 24 of 811, across 5 files
  • Include before and after visualisations for each candidatein 24 of 811, across 5 files
  • Read the domain glossary before exploringin 24 of 811, across 6 files
  • Return results instead of producing side effectsin 23 of 811, across 4 files
  • Explore the codebase for shallow modules and frictionin 23 of 811, across 3 files
  • Introduce seams only where things varyin 22 of 811, across 3 files
  • Reduce the number of methodsin 21 of 811, across 2 files
  • Design deep modules with small interfacesin 21 of 811, across 3 files

Said here and by no other author read

  • audit all existing visual values first
  • build tokens in three layers
  • design component APIs around variant unions
  • cover default hover active focus disabled loading error states
  • document with live do and do not examples
  • enforce token usage with lint rules

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.

Keep looking

Skills are one crate of 326,871. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.