Claude Skill

interface-craft

Raises the visual and interaction quality of an interface — layout, hierarchy, type, spacing, density, and the details that separate a considered product from a generic one. Use this when a screen works but looks unfinished or default, when a layout feels crowded or arbitrary, wh

LLM Mart · 0 points · 16 views 0 listing impressions 0 install-command copies
Virus-scanned Reviewed automatically before listing.

Full trust report

Download cbrock84-headcount-plugins_product_skills_interface-craft-98d1c17.zip · 3 KB
Part of cbrock84/headcount — 160 skills

Install

skills CLI npx skills add https://github.com/cbrock84/headcount/tree/main/plugins/product/skills/interface-craft
Claude Code claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install cbrock84-headcount@llmmart
Git git clone https://github.com/cbrock84/headcount.git

The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole cbrock84/headcount collection as a plugin from our marketplace. Git is the plain clone.

Skill manifest

Interface craft

Most interfaces do not fail on ideas. They fail on execution — spacing that is nearly consistent, hierarchy that is nearly clear, type that is nearly right.

Diagnose before restyling

Ask what the screen is for. One primary action, at most one secondary. If you cannot name the primary action, the layout problem is a product problem and no amount of styling fixes it.

The things that actually read as quality

Hierarchy. A viewer should know where to look before they read anything. Achieve it with size, weight, and space — in that order. Color is the weakest hierarchy tool and the most overused.

Spacing rhythm. Related things sit closer than unrelated things, and the gaps come from one scale. Inconsistent spacing is the defect people feel but cannot name. Get proximity right and a plain layout reads as designed.

Type. One family for the interface, two at most on the page. Set a real scale and use its steps rather than inventing sizes. Body text wants a comfortable measure — roughly 60–75 characters — and line height that grows as the measure widens.

Restraint in surfaces. Borders, shadows, and fills all separate things. Pick one per boundary. Stacking all three is why interfaces look busy at normal density.

Alignment. Everything lines up with something. An element aligned to nothing reads as a mistake even when it is intentional.

Density is a decision

An information-dense tool and a marketing page want opposite treatments. Decide which this is and commit — the uncomfortable middle, where a data table has landing-page padding, serves neither.

Finish the states

Loading, empty, error, and overflow are where products feel unfinished. An empty state is a design opportunity; a spinner with no context is an admission. Long strings, long lists, and small screens must all be handled, not hoped about.

Dark mode is a palette, not an inversion

Inverting a light theme produces the characteristic bad dark mode: pure black backgrounds, pure white text, and shadows that do nothing.

  • Use a very dark gray rather than pure black, and a slightly dimmed white rather than pure white. Maximum contrast between the two causes halation and is genuinely tiring to read.
  • Elevation reverses: in light themes raised surfaces cast shadows, in dark themes they get lighter. Shadow alone conveys nothing on a dark ground.
  • Saturated colors that worked on white will vibrate on dark. Desaturate and lighten accent colors for the dark palette rather than reusing them.
  • Define both palettes together, at token level, from the start. Retrofitting means auditing every surface.

Accessibility floor

These are not polish items — below them, some people cannot use the interface at all.

  • Text contrast meeting the standard ratio against its actual background, including text over images and inside colored buttons.
  • Never carry meaning by color alone. A red border indicating an error needs text or an icon too.
  • Every interactive element reachable by keyboard, in a sensible order, with a visible focus state.
  • Touch targets large enough to hit reliably, with spacing between adjacent ones.
  • Respect the reduced-motion preference: animation that cannot be disabled causes real symptoms for some users.
  • Real semantic elements — buttons that are buttons, headings in order. A styled div is invisible to assistive technology.

Sources

references/sources.md in this skill lists the outside authorities that settle the questions here — what each one is authoritative for, and what you may do with it. Check them before answering on anything they cover, and cite what you used. Most are free to read and not free to reproduce; the use note on each is binding.

Never

  • Add visual weight to fix a hierarchy problem caused by too many equal elements. Remove instead.
  • Center body text.
  • Ship a hover state without the matching focus state.
Files (headcount)
  • references
    • sources.md 3.5 KB
      # Sources — `product:interface-craft`
      
      <!-- Generated by scripts/build-sources.py from sources/*.toml. Do not edit. -->
      
      Check these before answering on anything they cover, and cite what you used. The use note on each one is binding: most of what a professional cites is free to read and not free to reproduce.
      
      ## Age Appropriate Design Code
      
      UK Information Commissioner's Office · UK · free to use with attribution — credit the publisher
      
      <https://ico.org.uk/for-organisations/uk-gdpr-guidance-and-resources/childrens-information/childrens-code-guidance-and-resources/>
      
      **Authoritative for:** What default settings, nudges and profiling are permissible in a service likely to be used by children. A statutory code, so it settles whether onboarding may default a toggle on.
      
      ## CCPA regulations, California Code of Regulations title 11
      
      California Privacy Protection Agency · US-CA · public domain — quote freely
      
      <https://cppa.ca.gov/regulations/consumer_privacy_act.html>
      
      **Authoritative for:** Symmetry in choice, as law. It settles whether a consent flow where accepting is one click and declining is three is permissible — converting what is usually argued as design taste into a compliance question.
      
      ## California Automatic Renewal Law, Business and Professions Code 17600-17606
      
      California Legislative Counsel · US-CA · public domain — quote freely
      
      <https://leginfo.legislature.ca.gov/faces/codes_displayText.xhtml?division=7.&chapter=1.&part=3.&lawCode=BPC&article=9.>
      
      **Authoritative for:** The concrete cancellation obligations a subscription business actually has to meet, because California's requirements are stricter than the federal floor and apply to any California customer — which in practice makes them the binding ones.
      
      ## Human Interface Guidelines
      
      Apple · global · **read and cite only — copyrighted, do not reproduce**
      
      <https://developer.apple.com/design/human-interface-guidelines>
      
      **Authoritative for:** What correct platform behavior is on Apple platforms — control semantics, navigation structure, touch targets. Its authority is not taste: deviation is grounds for review rejection.
      
      ## Unicode Common Locale Data Repository
      
      Unicode Consortium · global · free to use with attribution — credit the publisher
      
      <https://cldr.unicode.org/>
      
      **Authoritative for:** Correct date, number, currency, name-order, plural and sort behavior for a locale. Settles how something should render in a given language with data rather than guesswork, and every platform's internationalization library derives from it.
      
      ## WAI-ARIA and the ARIA Authoring Practices Guide
      
      World Wide Web Consortium · global · **read and cite only — copyrighted, do not reproduce**
      
      <https://www.w3.org/WAI/ARIA/apg/>
      
      Machine-readable: <https://www.w3.org/TR/wai-aria-1.2/>
      
      **Authoritative for:** Which roles, states and keyboard interactions a given widget must implement. Settles whether Escape should close a dialog and whether a role is the right one, without appeal to preference.
      
      ## Web Content Accessibility Guidelines 2.2
      
      World Wide Web Consortium · global · **read and cite only — copyrighted, do not reproduce**
      
      <https://www.w3.org/TR/WCAG22/>
      
      **Authoritative for:** Whether a page, email or video is accessible. It is the criteria list that US Section 508, the EU's EN 301 549 and most enterprise procurement point at, so it settles any argument that reaches a buyer's accessibility requirement.
      
      ---
      
      Sources are maintained in `sources/` upstream, not here. If one is wrong, out of date, or missing, fix it there — this file is regenerated and an edit to it is lost.
      
  • SKILL.md 4.3 KB
    ---
    name: interface-craft
    description: Raises the visual and interaction quality of an interface — layout, hierarchy, type, spacing, density, and the details that separate a considered product from a generic one. Use this when a screen works but looks unfinished or default, when a layout feels crowded or arbitrary, when a page has no clear focal point, or when an interface needs to feel trustworthy rather than merely functional.
    ---
    
    # Interface craft
    
    Most interfaces do not fail on ideas. They fail on execution — spacing that is nearly consistent,
    hierarchy that is nearly clear, type that is nearly right.
    
    ## Diagnose before restyling
    
    Ask what the screen is *for*. One primary action, at most one secondary. If you cannot name the
    primary action, the layout problem is a product problem and no amount of styling fixes it.
    
    ## The things that actually read as quality
    
    **Hierarchy.** A viewer should know where to look before they read anything. Achieve it with size,
    weight, and space — in that order. Color is the weakest hierarchy tool and the most overused.
    
    **Spacing rhythm.** Related things sit closer than unrelated things, and the gaps come from one
    scale. Inconsistent spacing is the defect people feel but cannot name. Get proximity right and a
    plain layout reads as designed.
    
    **Type.** One family for the interface, two at most on the page. Set a real scale and use its steps
    rather than inventing sizes. Body text wants a comfortable measure — roughly 60–75 characters — and
    line height that grows as the measure widens.
    
    **Restraint in surfaces.** Borders, shadows, and fills all separate things. Pick one per boundary.
    Stacking all three is why interfaces look busy at normal density.
    
    **Alignment.** Everything lines up with something. An element aligned to nothing reads as a mistake
    even when it is intentional.
    
    ## Density is a decision
    
    An information-dense tool and a marketing page want opposite treatments. Decide which this is and
    commit — the uncomfortable middle, where a data table has landing-page padding, serves neither.
    
    ## Finish the states
    
    Loading, empty, error, and overflow are where products feel unfinished. An empty state is a design
    opportunity; a spinner with no context is an admission. Long strings, long lists, and small screens
    must all be handled, not hoped about.
    
    ## Dark mode is a palette, not an inversion
    
    Inverting a light theme produces the characteristic bad dark mode: pure black backgrounds, pure
    white text, and shadows that do nothing.
    
    - Use a very dark gray rather than pure black, and a slightly dimmed white rather than pure white.
      Maximum contrast between the two causes halation and is genuinely tiring to read.
    - Elevation reverses: in light themes raised surfaces cast shadows, in dark themes they get
      *lighter*. Shadow alone conveys nothing on a dark ground.
    - Saturated colors that worked on white will vibrate on dark. Desaturate and lighten accent colors
      for the dark palette rather than reusing them.
    - Define both palettes together, at token level, from the start. Retrofitting means auditing every
      surface.
    
    ## Accessibility floor
    
    These are not polish items — below them, some people cannot use the interface at all.
    
    - Text contrast meeting the standard ratio against its actual background, including text over
      images and inside colored buttons.
    - Never carry meaning by color alone. A red border indicating an error needs text or an icon too.
    - Every interactive element reachable by keyboard, in a sensible order, with a visible focus state.
    - Touch targets large enough to hit reliably, with spacing between adjacent ones.
    - Respect the reduced-motion preference: animation that cannot be disabled causes real symptoms for
      some users.
    - Real semantic elements — buttons that are buttons, headings in order. A styled div is invisible to
      assistive technology.
    
    ## Sources
    
    `references/sources.md` in this skill lists the outside authorities that settle the questions
    here — what each one is authoritative for, and what you may do with it. Check them before
    answering on anything they cover, and cite what you used. Most are free to read and not free
    to reproduce; the use note on each is binding.
    
    ## Never
    
    - Add visual weight to fix a hierarchy problem caused by too many equal elements. Remove instead.
    - Center body text.
    - Ship a hover state without the matching focus state.
    

Comments (0)

Sign in to join the conversation.

No comments yet.

Reviews (0)

No reviews yet.

Related