ui-design-engineering
Skill4 starsChanged 2 months agoMITView on GitHub
Design, implement, harden, and review production-grade user interfaces for web apps, dashboards, SaaS products, admin tools, forms, and responsive frontend components. Use when building or improving UI/UX, translating Figma or requirements into code, styling React/Vue/Svelte/HTML views, reviewing frontend quality, fixing accessibility or motion, refining interaction states, improving performance, or validating responsive layout and visual polish. Integrates with Skill-Agents frontend workflows and browser, Playwright, Figma, package, test, and validation MCP tools.
1 other project uses a version of this.
Adopted by
Most recently taken up by
- Kaidera-AI/skillstheir own version, first seen Oct 13, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- Kaidera-AI/skills★ 2same 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 repository58 other files it gives its agents.
- AGENTS.mdAGENTS.md
- skills/project-docs-prep/templates/AGENTS.mdAGENTS.md
- skills/project-docs-prep/templates/CLAUDE.mdCLAUDE.md
- deep-planningSkill
- deep-planningSkill
- deprecatedSkill
- architecture-reviewSkill
- code-reviewSkill
- diagnoseSkill
- tddSkill
- ux-ui-design-assessmentSkill
- in-progressSkill
- mcp-tool-managementSkill
- skill-managementSkill
- obsidian-canvasSkill
- obsidian-markdownSkill
- obsidian-notion-bridgeSkill
- obsidian-vault-workflowSkill
- boomz-preferencesSkill
- personal-agent-workflowSkill
- personalSkill
- automation-designSkill
- grill-with-docsSkill
- handoffSkill
- inbox-meeting-triageSkill
- markdown-reportSkill
- prompt-improvementSkill
- project-docs-prepSkill
- claim-citation-checkSkill
- daily-news-reportSkill
- github-skill-researchSkill
- project-discoverySkill
- repo-tourSkill
- research-methodologySkill
- seo-website-evaluatorSkill
- thaiSkill
- thai-addressSkill
- thai-customer-serviceSkill
- thai-date-formatSkill
- thai-festival-cardSkill
- thai-government-formSkill
- thai-id-validateSkill
- thai-invoiceSkill
- thai-pdpaSkill
- thai-resumeSkill
- thai-social-captionSkill
- thai-text-processingSkill
- thai-translateSkill
- backtest-expertSkill
- dividend-value-screenerSkill
- drawdown-circuit-breakerSkill
- exposure-coachSkill
- market-breadth-analyzerSkill
- portfolio-managerSkill
- position-sizerSkill
- tradingSkill
- trader-memory-coreSkill
- uptrend-analyzerSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
40 rules. About 0 are common, 35 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈35
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 21
When this skill is loaded through mcp-tools:
- Very specific: line 23
Use route_request to select the workflow and related skills.
- Very specific: line 24
Prefer the frontend-ui toolset for implementation and browser QA.
- Very specific: line 25
Prefer the design-frontend toolset when Figma or design mapping is involved.
- Very specific: line 26
Use build_agent_context to load only the selected workflow and skills.
- Distinctive: line 27
Use MCP tools in this order when available:
- Distinctive: line 33
Follow MCP safety policy and the project's allowed roots.
- Distinctive: line 40
Read the existing frontend structure, design tokens, component library, routes, and nearby screens.
- Distinctive: line 53
Keep page sections unframed.
- Distinctive: line 54
Do not place cards inside cards.
- Distinctive: line 59
Use icons for familiar tool actions and labels or tooltips for unfamiliar icons.
- Distinctive: line 63
Prefer native semantic elements and established accessible primitives.
- Distinctive: line 71
Use typography, spacing, density, color, and elevation as one coherent system.
- Distinctive: line 73
Use tabular numerals for changing data and stable dimensions for controls and grids.
- Distinctive: line 74
Avoid default-looking palettes, gratuitous gradients, glow effects, decorative blobs, and generic hero layouts.
- Distinctive: line 75
Keep accent color deliberate and ensure the interface is not dominated by one hue family.
- Distinctive: line 78
Add animation only when it clarifies change, hierarchy, causality, or spatial continuity.
- Distinctive: line 79
Prefer transform and opacity.
- Distinctive: line 80
Keep interaction feedback fast and stop looping animation when it is not visible.
- Distinctive: line 81
Do not let motion delay primary actions.
- Distinctive: line 84
Run the narrowest available lint, typecheck, and component tests.
- Distinctive: line 86
Check overflow, text wrapping, occlusion, focus order, keyboard use, state changes, and console errors.
- Distinctive: line 95
Build: create a new component, screen, flow, or application experience.
- Distinctive: line 98
Harden: add robust loading, empty, error, edge-case, localization, and recovery behavior.
- Distinctive: line 106
Follow existing routing, rendering, data-fetching, state, styling, testing, and component conventions.
- Distinctive: line 107
Use framework-specific best practices already present in the repository.
- Distinctive: line 112
Do not migrate frameworks, routers, state libraries, CSS systems, or primitive libraries unless requested.
- Distinctive: line 116
Test realistic long text, empty data, failed requests, slow requests, and partial permissions.
- Distinctive: line 117
Consider localization expansion, pluralization, dates, numbers, and right-to-left layout when relevant.
- Distinctive: line 119
Avoid layout shifts when asynchronous content arrives.
- Distinctive: line 120
Ensure touch targets and hover behavior also work for keyboard and touch users.
- Distinctive: line 125
Use the project's existing component primitives first.
- Distinctive: line 126
Do not mix primitive libraries within one interaction surface.
- Distinctive: line 127
Do not hand-roll keyboard or focus behavior when a proven primitive exists.
- Distinctive: line 128
Do not block paste in text inputs.
- Distinctive: line 129
Use dynamic viewport units for full-height layouts and account for mobile safe areas.
- Distinctive: line 130
Keep z-index values on a small documented scale.
- Distinctive: line 131
Avoid arbitrary styling values when project tokens already express the intent.
- Distinctive: line 132
Do not introduce a landing page when the requested product should open directly into the working experience.
- Distinctive: line 133
Do not add explanatory UI copy about implementation, styling, or keyboard shortcuts unless the product requires it.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
UI Design Engineering
Build interfaces that emerge from the product, user, and workflow rather than from a generic template.
Choose The Mode
- Build mode: inspect the product context, implement the interface, and validate it in a browser.
- Review mode: report concrete violations first, explain impact briefly, and propose the smallest useful fix.
For a detailed review checklist, read references/ui-audit.md.
For attribution and the external ideas that informed this skill, read references/credits.md.
Skill-Agents Integration
When this skill is loaded through mcp-tools:
- Use
route_requestto select the workflow and related skills. - Prefer the
frontend-uitoolset for implementation and browser QA. - Prefer the
design-frontendtoolset when Figma or design mapping is involved. - Use
build_agent_contextto load only the selected workflow and skills. - Use MCP tools in this order when available:
project,repo-index,package, anddocsfor discovery.figmaandbrowser-page-mapfor design and page context.code-editingfor implementation.browser,playwright, andplaywright-actionsfor visual and interaction QA.test-inspection,ci, andvalidationfor verification.
- Follow MCP safety policy and the project's allowed roots. Do not request broader tools than the task needs.
With Local LLM Orchestrator, use main-llm-tools while developing or auditing UI so the model receives this skill and the required MCP tools. A direct model such as main-llm or coding does not load skills automatically.
Workflow
- Inspect before designing
- Read the existing frontend structure, design tokens, component library, routes, and nearby screens.
- Reuse established primitives and patterns unless they are the source of the problem.
- Identify the actual user, their immediate goal, the environment, and the frequency of the workflow.
- State the design intent
- Name the product domain, desired density, visual tone, and interaction character.
- Identify one signature element that belongs specifically to this product.
- Name the obvious generic defaults to avoid.
- For operational tools, prioritize scanning, comparison, repeated action, and predictable navigation.
- Design the information architecture
- Lead with the user's primary task, not decorative content.
- Establish navigation, hierarchy, grouping, and action priority before visual styling.
- Keep page sections unframed; use cards only for repeated items, modals, or genuinely bounded tools.
- Do not place cards inside cards.
- Implement complete behavior
- Build real controls and wire their expected interactions.
- Include loading, empty, error, disabled, selected, hover, focus, and success states when applicable.
- Use icons for familiar tool actions and labels or tooltips for unfamiliar icons.
- Preserve the project's framework, state-management, styling, and component conventions.
- Enforce accessibility
- Prefer native semantic elements and established accessible primitives.
- Give every interactive control an accessible name.
- Make keyboard focus visible and preserve logical tab order.
- Manage dialog focus, Escape behavior, and focus restoration.
- Associate form labels, help text, errors, required state, and invalid state correctly.
- Respect reduced motion and never rely on color, hover, or toast messages alone.
- Refine visual craft
- Use typography, spacing, density, color, and elevation as one coherent system.
- Match type scale to context; compact tools need compact headings.
- Use tabular numerals for changing data and stable dimensions for controls and grids.
- Avoid default-looking palettes, gratuitous gradients, glow effects, decorative blobs, and generic hero layouts.
- Keep accent color deliberate and ensure the interface is not dominated by one hue family.
- Keep motion purposeful
- Add animation only when it clarifies change, hierarchy, causality, or spatial continuity.
- Prefer transform and opacity; avoid animating layout and large blur surfaces.
- Keep interaction feedback fast and stop looping animation when it is not visible.
- Do not let motion delay primary actions.
- Validate before handoff
- Run the narrowest available lint, typecheck, and component tests.
- Open the real page in a browser and inspect desktop and mobile viewports.
- Check overflow, text wrapping, occlusion, focus order, keyboard use, state changes, and console errors.
- For canvas, 3D, charts, and media, verify rendered pixels rather than trusting DOM presence.
- Iterate on visible defects before reporting completion.
Enhancement Modes
Choose the smallest mode that satisfies the request. Combine modes only when the task genuinely spans them.
- Shape: clarify the user, task, information architecture, and design direction before coding.
- Build: create a new component, screen, flow, or application experience.
- Adapt: make an existing interface work across breakpoints, devices, input methods, and content lengths.
- Audit: inspect accessibility, responsiveness, interaction, performance, architecture, and visual consistency.
- Harden: add robust loading, empty, error, edge-case, localization, and recovery behavior.
- Polish: refine typography, spacing, alignment, color, elevation, microcopy, and interaction feedback.
- Optimize: reduce rendering cost, asset weight, layout work, animation jank, and unnecessary client state.
- Distill: simplify noisy hierarchy, controls, labels, and repeated decoration without removing needed capability.
Framework Awareness
- Detect the framework and version from the project before choosing patterns.
- Follow existing routing, rendering, data-fetching, state, styling, testing, and component conventions.
- Use framework-specific best practices already present in the repository.
- For React, inspect rendering boundaries, effect usage, keys, memoization pressure, and bundle cost.
- For Vue, preserve Composition or Options API conventions, reactivity boundaries, and router/store patterns.
- For Svelte, preserve component composition and current reactivity conventions.
- For Three.js or canvas work, verify visual output, resize behavior, asset loading, controls, and animation loops.
- Do not migrate frameworks, routers, state libraries, CSS systems, or primitive libraries unless requested.
Hardening Requirements
- Test realistic long text, empty data, failed requests, slow requests, and partial permissions.
- Consider localization expansion, pluralization, dates, numbers, and right-to-left layout when relevant.
- Preserve user input during recoverable errors.
- Avoid layout shifts when asynchronous content arrives.
- Ensure touch targets and hover behavior also work for keyboard and touch users.
- Confirm destructive actions, prevent accidental double submission, and communicate background progress.
Build Rules
- Use the project's existing component primitives first.
- Do not mix primitive libraries within one interaction surface.
- Do not hand-roll keyboard or focus behavior when a proven primitive exists.
- Do not block paste in text inputs.
- Use dynamic viewport units for full-height layouts and account for mobile safe areas.
- Keep z-index values on a small documented scale.
- Avoid arbitrary styling values when project tokens already express the intent.
- Do not introduce a landing page when the requested product should open directly into the working experience.
- Do not add explanatory UI copy about implementation, styling, or keyboard shortcuts unless the product requires it.
Review Output
Report findings by severity:
Findings
- [P1] Short title - file:line
User impact and concrete fix.
Validation
- Viewports and interactions checked.
- Tests or browser checks run.
Residual Risk
- Anything not verified.Priority guidance:
P0: unusable core flow, severe accessibility barrier, or destructive behavior.P1: broken interaction, keyboard/focus failure, major responsive overlap, or inaccessible form/dialog.P2: incomplete state, confusing hierarchy, performance issue, or significant inconsistency.P3: localized polish issue with low user impact.
Final Quality Checks
- Can the intended user complete the primary workflow efficiently?
- Does the interface still identify its product domain if the logo and product name are hidden?
- Is hierarchy visible when squinting or viewing at a distance?
- Would replacing the layout, type, or tokens with common defaults materially change the design?
- Are all interactive states accessible by keyboard and understandable without color alone?
- Is the mobile composition deliberate rather than merely compressed?
- Did browser verification confirm the implementation rather than only the source code?
Source And Attribution
This skill is an original Skill-Agents synthesis. It was informed by patterns cataloged in the UI Skills directory and by the credited skill authors listed in references/credits.md. Do not present this skill as an official UI Skills or upstream-author skill.
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
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.

