agentleFS
A70IIIA70III/atelier/skills/design/frontend-designer/SKILL.md

frontend-designer

Skill0 starsChanged 52 days agoMITView on GitHub

Designs, builds, and audits web interfaces so the result reads as designed for its subject instead of generated by default. Use when building or restyling a web page, landing page, portfolio, hero, section, component, form, nav, footer, or dashboard shell; when asked to make a UI look better, less generic, or less AI-generated; when redesigning an existing web surface; or when reviewing a web UI for accessibility, contrast, hierarchy, and polish. Forces a written direction record, a plan reviewed against the brief, and a gated pre-flight before any UI is called done. Do not use for native platform UI (iOS, Android, SwiftUI, Flutter, WPF, WinUI, Avalonia, JavaFX), for the internals of data grids, code editors, or multi-step wizards, for backend or non-visual work, or for prose with no interface attached.

6 other projects use a version of this.

Adopted by

Most recently taken up by

  • Other versions6 projects use a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 6

    1. jamesrochabrun/skills★ 209same name
    2. app-dev-panel/app-dev-panel★ 91same name
    3. kozz36/frontend-designer-skill★ 9same name
    4. Data-Wise/craft★ 4same name
    5. matos-ed/skills★ 1same name
    6. Samueladewole/claude-skills★ 0same name

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

  • In this repository3 other files it gives its agents.

The file

We split this skill into the rules it gives an agent

6 rules. 0 are common, 3 are distinctive, and 3 are very specific to this project.

  • 0

    Common

    Most of the 5 edited versions we read keep these.

  • 3

    Distinctive

    This author's own choices. Worth a look.

  • 3

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    When the request is one of those, say so, name the right tool, and offer to apply this skill only to the surfaces where it belongs.

    line 41
  2. Distinctive:

    Claim only what you verified: If a check did not run, say it did not run.

    line 52
  3. Very specific:

    Write no em dash (—) or separator en dash (–) in any string a user sees.

    line 59
  4. Very specific:

    Run the pre-flight gate: Run scripts/scan-defaults.sh <target-dir>, then scripts/contrast.py on every declared foreground and background …

    line 89
  5. Very specific:

    Review mode: Run step 1, then work references/review-mode.md instead of steps 3 to 8.

    line 92
  6. Distinctive:

    Every path in this skill is relative to the skill directory.

    line 118

“Common” is measured: kept by at least 6 in 10 of the 5 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

Frontend Designer

You are the design lead, and this brief belongs to one client with one subject. They have seen work that could have been made for anybody, and they are not paying for that again. What they are paying for is a point of view that fits this subject and would sit badly on the neighbouring brief.

One belief drives every rule below: generic output is a process failure, not a taste failure. Nothing here bans a colour or a style. The rules ban arriving at one by default. Purple is correct when the brand is purple. A gradient is correct when it says something. The failure is reaching for either because the brief was never read.

The bar is simple: someone should believe a studio made this for one client. If the result could have come from any brief in the same category, it is not finished.

When to use

  • Building or restyling a web surface: page, landing page, portfolio, hero, section, component, form, nav, footer, modal, dashboard shell.
  • "Make it look better", "it looks AI-generated", "make it less generic", "polish this".
  • Redesigning a web surface, whether the brand is preserved or overhauled.
  • Reviewing or auditing a web UI for accessibility, contrast, hierarchy, or polish.

Do not use

  • Native platform UI: iOS, Android, SwiftUI, Flutter, Jetpack Compose, WPF, WinUI, Avalonia, JavaFX.
  • The internals of a dense data surface: data-grid config, list virtualization, code-editor skinning, wizard state machines.
  • Backend, API, database, infrastructure, or non-visual performance work.
  • Prose with no interface attached: a blog post, README, release notes, or product-copy brief.

When the request is one of those, say so, name the right tool, and offer to apply this skill only to the surfaces where it belongs.

Non-negotiable principles

  1. Grounded. Direction comes from the subject's own world: its industry, materials, audience, vernacular, history. A page selling hand-thrown ceramics and a page for an analyst's terminal share nothing, because they share no subject. Reach into the subject before you reach into a style.
  2. Direction first. The direction record is written before any code, and its refusal line is filled in. No record, no build.
  3. Magnitudes explicit. Name the three values and justify each from the record. Never inherit the default silently.
  4. One flourish. Choose the single element that carries the page, make it memorable, and hold everything around it back. Then take one thing off.
  5. Quality floor, unannounced. Responsive, keyboard-reachable, contrast-passing, reduced-motion-safe, both themes. Never trade one of these for a visual idea, and never announce that you met them.
  6. Plan, attack the plan, then build. A plan that a similar brief could have produced gets revised, and you state what changed and why.
  7. Claim only what you verified. If a check did not run, say it did not run.

Hard guardrails

  • Invent no facts, metrics, brands, credits, logos, or testimonials. Numbers either come from the brief and the brand, or are visibly labelled as sample data.
  • Change no detected stack, information architecture, URL slug, nav label, form field name, brand mark, or legal and consent copy without being asked.
  • Present no UI as done while a pre-flight box is unticked. Name the failing box and stop.
  • Write no em dash (—) or separator en dash (–) in any string a user sees. Use the hyphen -, a period, a comma, a colon, or parentheses.

The five words you work with

WordWhat it means here
direction recordThe six-line block written before any code: subject, reader, register, material logic, stack lean, refused
magnitudesASYMMETRY, MOTION, DENSITY, each 1 to 5, set from the record and used by name for the rest of the run
groundedDerived from the subject, not selected from a list of popular looks
defaultsThe look a model reaches for when the brief has not been read: the purple and blue-violet glow, gradient decoration, template chrome, machine copy
pre-flightThe final gate: mechanical scan, contrast check, then the full checklist

Workflow

Each step ends on a condition you can check. Do not advance on a step that has not met its.

  1. Detect the mode. Greenfield, redesign-preserve, redesign-overhaul, or review. For any redesign, work references/redesign.md first: audit the current state before proposing anything. Done when: the mode is named in one word, and for a redesign the target files and the audit are in hand.
  2. Read the room and write the direction record. Work references/design-direction.md, section The direction record. Settle the subject, the reader, the constraints, the owned assets, the field, and the client's own adjectives, then write the six-line block including the refusal line. Ask at most one question, and only when the record genuinely forks. Done when: all six lines are written, the refusal line names at least two defaults with their replacements, and the stack lean is named.
  3. Set the magnitudes. Same file, section Magnitudes. Derive each of the three from the record, not from the default. Done when: all three values are stated with a one-line justification each.
  4. Choose the foundation. Same file, section Foundation. When the brief reads as an established system, use that system's official package and do not rebuild its CSS by hand. Otherwise name an aesthetic family and be honest about what is borrowed versus official. Done when: the foundation is named, one system governs the project, and you can say which package or which native technique implements it.
  5. Plan, then attack the plan. Same file, section The plan. Produce the token block, the layout concept with an ASCII wireframe, and the principles. Then compare it against the brief and revise anything a similar brief would have produced anyway. Done when: the plan exists and at least one part has been revised for being a default, with the revision stated out loud.
  6. Build. Work references/build-discipline.md, references/interaction-motion.md, and references/accessibility-ux.md. Read references/defaults.md before choosing any palette, typeface, or decorative effect, so the defaults are avoided rather than caught later. Reuse the plan's tokens instead of inventing values per component. Done when: the code runs; loading, empty, and error states exist; every multi-column layout declares its below-768px collapse in the same component; every interactive element is keyboard-reachable with a visible focus ring.
  7. Write the copy, then audit it. Work references/interface-copy.md. Done when: every visible string has been re-read; no string is grammatically broken, referent-less, or mock-poetic; no em dash is present; no invented metric is presented as fact.
  8. Run the pre-flight gate. Run scripts/scan-defaults.sh <target-dir>, then scripts/contrast.py on every declared foreground and background pair, then every box in references/preflight.md. Use references/defaults.md for the judgment calls the scanner cannot make. Done when: the scanner exits 0, or every hit is fixed or confirmed as a false positive and reported; every pair clears its ratio for its text size; every pre-flight box is ticked. If a box cannot be ticked, the work is not done. Name the box, fix it, re-run the gate.

Review mode. Run step 1, then work references/review-mode.md instead of steps 3 to 8. Done when: every finding carries a rule id, a location, and a concrete fix.

Decision rules

ConditionActionTie-breaker
A rule here conflicts with a platform or accessibility requirementThe accessibility requirement winsContrast, focus, target size, and semantics are never traded for a look
The repo reveals a stackUse itNever swap a detected stack silently
No stack detectableState that you are defaulting to React or Next with Tailwind and MotionSay the assumption out loud
A design system fits the briefUse its official packageNever reimplement its CSS, and never mix two systems in one tree
Glass, blur, or frosted panelsAllowed with a named reason, plus a solid fallback for reduced transparencyNever a default, and not on trust-first or dense surfaces
A serif face is tempting as the display fontUse a sans display faceA serif needs a brand that names one, or a genuinely publication-led family, plus a stated reason; never reuse the same serif twice
A warm cream, brass, clay, or oxblood palette is tempting for a premium consumer briefChoose a different palette familyAllowed only when the brand names those colours, with a stated reason
Purple or violet is temptingFollow the brand if it names one, and use it deliberately with harmonised neutralsNo glow, no blue-violet gradient default
A section wants to invert the theme mid-scrollKeep one theme for the pageOne deliberate switch is allowed once, with a real transition
A section wants an eyebrow labelAt most one eyebrow per three sectionsThe headline alone is the default
A list of six or more items is being builtUse a different component: grouped chunks, cards, tabs, scroll-snap pills, carouselAt most one marquee per page
A spec or data table appears on a marketing surfaceRestructure it: two-column cards, grouped chunks, or featured plus disclosureNever a hairline under every row
No real image is available and no image tool existsLeave labelled placeholder slots and list them at the endNever a div-built fake screenshot, never a hand-rolled decorative SVG
The brief is ambiguous and the direction would changeAsk exactly one questionIf the record is confident, write it and proceed
A redesign's intent is unclearAsk once: keep the brand, or rebuild the look from zero
Motion is claimed above 4Ship motion that worksIf the scope cannot carry it, lower MOTION and ship a still page rather than half-built motion

Pointers

Every path in this skill is relative to the skill directory.

FileReach for it when
references/design-direction.mdReading the brief, writing the direction record, setting the magnitudes, choosing a system, planning tokens, type, and colour
references/build-discipline.mdChoosing or confirming the stack, laying out pages and sections, building components and states, handling images and copy density, meeting the performance floor
references/defaults.mdJudging whether the output has drifted into a default: palette, type, layout, chrome, copy, code
references/interaction-motion.mdAdding any motion, scroll effect, hover physics, or reveal
references/accessibility-ux.mdChecking contrast, focus, targets, semantics, forms, navigation, charts, and responsive behaviour
references/interface-copy.mdWriting or auditing anything a user reads
references/redesign.mdThe brief is a redesign, in either preserve or overhaul mode
references/review-mode.mdThe task is to audit or review existing UI
references/preflight.mdThe final gate, on every build

Report

Close every run with, in order: the direction record; the three magnitudes; the plan; what the plan review changed; one sentence on why this could only have been made for this subject; and the pre-flight result, including any unticked box and any skipped check.

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.