agentleFS
ekajaya740ekajaya740/skills/design/SKILL.md

design

Skill0 starsChanged 13 days agoMITView on GitHub

The craft bar for UI work — tokens, layout, motion, states, and the design doc that must match the code. Use when building, editing, or reviewing any interface, or when deciding whether a UI change is finished.

197 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use banner-design, ui-styling and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • seikaikyoSkill

    banner-design

    Design banners for social media, ads, website heroes, creative assets, and print. Multiple art direction options with optional generated or supplied visuals. Actions: design, create, generate banner. Platforms: Facebook, Twitter/X, LinkedIn, YouTube, Instagram, Google Display, website hero, print. Styles: minimalist, gradient, bold typography, photo-based, illustrated, geometric, retro, glassmorphism, 3D, neon, duotone, editorial, collage.

    Also in 38 projects that use this

  • MicrosoftSkill

    ui-styling

    Guide for the visual style, structure, and shared building blocks used by Semantic Link Labs interactive UI tools (HTML widgets and anywidget-based widgets). Use this when adding a new interactive UI, modifying an existing one, or adding shared visual components.

    Also in 39 projects that use this

  • seikaikyoSkill

    brand

    Brand voice, visual identity, messaging frameworks, asset management, brand consistency. Activate for branded content, tone of voice, marketing assets, brand compliance, style guides.

    Also in 43 projects that use this

  • mayankjain1815-commitsSkill

    infra-audit

    Reads docker-compose, env files, ORM configs, and connection strings to map current infrastructure. Flags missing layers (cache, queue, analytics) based on observed access patterns. Outputs a structured infrastructure manifest.

    Also in 3 projects that use this

  • JetBrainsSkill

    slides

    Create and edit presentation slide decks (`.pptx`) with PptxGenJS and render/validation utilities. Use when tasks involve building a new PowerPoint deck, recreating slides from screenshots/PDFs/reference decks, modifying slide content while preserving editable output, adding charts/diagrams/visuals, or diagnosing layout issues such as overflow, overlaps, and font substitution.

    Also in 42 projects that use this

  • AnthropicSkill

    design-system

    Audit, document, or extend your design system. Use when checking for naming inconsistencies or hardcoded values across components, writing documentation for a component's variants, states, and accessibility notes, or designing a new pattern that fits the existing system.

    Also in 49 projects that use this

The file

We split this skill into the rules it gives an agent

2 rules. 0 are common, 1 is distinctive, and 1 is very specific to this project.

  • 0

    Common

    Most of the 174 edited versions we read keep these.

  • 1

    Distinctive

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    What is the one thing on this screen?: If there are two, one is the page and one is a card.

    line 23
  2. Very specific:

    When the project has no design system yet: create docs/design-system.md with the tokens, and put the first DESIGN.md beside the first real …

    line 96

“Common” is measured: kept by at least 6 in 10 of the 174 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Design

What "finished" means for an interface, and the documents that keep it true. The bar is not taste — every item below is checkable.

This is the generic craft bar. A project with its own design system overrides the tokens; it does not override the states, the craft checks, or the design-doc rule.

The five questions before any UI code

Answer these in the reply, one line each. If any answer is "whatever looks fine", that is the decision to make first.

  1. Who is looking, and at what size? Phone at arm's length, laptop at a desk, a TV across a room. It changes the type scale, not just the breakpoints.
  2. What is the one thing on this screen? If there are two, one is the page and one is a card.
  3. What is the page's job in one verb? Browse, compare, confirm, edit, monitor. The verb picks the layout.
  4. What is the empty, loading, error, and done state? Four states per surface, not one.
  5. What existing component or token does this reuse? Copy the nearest existing surface. A new shape must earn itself.

The craft bar

Each row is verifiable by looking. Full explanations and the anti-pattern behind each: CRAFT-BAR.md.

AreaThe barFails when
TokensEvery colour, radius, font size, and spacing value comes from the token layerA hex code, a 13px, a magic 17px padding
TypeThree roles at most: display, body, mono. A deliberate scaleFive sizes between 14 and 18
SpacingOne scale, applied on a rhythm4/6/8/10/12 all used for the same kind of gap
HierarchyExactly one thing is loudest; the eye has a pathEverything bold, everything a card, everything accented
StatesEmpty, loading, error, success — designed, not defaultedBare "Loading…" text; an empty table with no explanation
DensityRows and cards sized for their content, consistentlyMixed row heights in one list
MotionMotion explains a change in state; 120–250ms; respects reduced-motionDecorative animation, or a 600ms fade on every element
InteractionEvery clickable thing has hover, focus-visible, active, disabledFocus ring removed with no replacement
CopyConcrete, verb-first, sentence case, no filler"Submit", "Oops!", "Something went wrong"
ResponsiveReal content at 360/768/1280; no horizontal scroll; 44px touch targetsA desktop layout squeezed

States are the work

Most unfinished UI is missing states, not missing polish. For every surface that fetches or mutates:

StateMust show
EmptyWhy it is empty and the one action that fills it
LoadingA skeleton matching the final layout, or a spinner in place — never bare text
ErrorWhat failed, in the user's words, and a retry
PartialWhat loaded and what did not, in that order
SuccessThe new state, not a toast that vanishes before it is read
DisabledWhy it is disabled, visible without hovering

A loading state that changes the layout when it resolves is a bug, not a rough edge.

The design doc rule

A component is not done until its DESIGN.md matches. The doc is not a write-up after the fact; it is the contract the next change checks against.

Per component or surface, DESIGN.md holds:

---
tokens: [surface-1, text-primary, accent, radius-md]
states: [empty, loading, error, success]
---

## Purpose
One sentence: what this is for and where it appears.

## Anatomy
The parts, and which are optional.

## Contract
Props, variants, and what each variant is for.

## Tokens consumed
The exact names, from the token layer.

## Not for
The adjacent case this should not be used for.

Plus one row in the component index (map) so the doc is findable. A component whose tokens changed without its doc changing is a review finding, not a nit.

When the project has no design system yet: create docs/design-system.md with the tokens, and put the first DESIGN.md beside the first real component. Do not write thirty design docs for zero components.

Reviewing UI

Two axes, reported side by side:

  • Craft — the table above, checked by looking at a rendered screen.
  • Contract — the design doc and tokens match the code; states exist; the change did not invent a new pattern where one existed.

A review that never rendered the UI is a code review, and should say so.

Anti-patterns at a glance

  • Accent colour used for more than one purpose on a screen.
  • A card inside a card inside a card.
  • Icons without labels where the icon is not universal.
  • A toast as the only confirmation of a destructive action.
  • Text contrast below 4.5:1 for body copy.
  • A modal for something that could be inline.
  • Three different border radii in one view.
  • Motion on hover for every element, so nothing reads as interactive.

Related

  • The full reasoning per area → CRAFT-BAR.md
  • Design docs in a monorepo → skill project-scaffold → targets/monorepo.md
  • Proving a UI change → skill verify-change § UI changes

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.