Skip to content

kinwisenz-devops/ui-ux-designer

v0.1.0MIT

Mobile-first UI and UX design skills: UX principles, adaptive layout, navigation, feedback and forms, visual design, accessibility, documentation and review

██╗   ██╗██╗    ██╗   ██╗██╗  ██╗
██║   ██║██║    ██║   ██║╚██╗██╔╝
██║   ██║██║    ██║   ██║ ╚███╔╝
██║   ██║██║    ██║   ██║ ██╔██╗
╚██████╔╝██║    ╚██████╔╝██╔╝ ██╗
 ╚═════╝ ╚═╝     ╚═════╝ ╚═╝  ╚═╝
██████╗ ███████╗███████╗██╗ ██████╗ ███╗   ██╗███████╗██████╗
██╔══██╗██╔════╝██╔════╝██║██╔════╝ ████╗  ██║██╔════╝██╔══██╗
██║  ██║█████╗  ███████╗██║██║  ███╗██╔██╗ ██║█████╗  ██████╔╝
██║  ██║██╔══╝  ╚════██║██║██║   ██║██║╚██╗██║██╔══╝  ██╔══██╗
██████╔╝███████╗███████║██║╚██████╔╝██║ ╚████║███████╗██║  ██║
╚═════╝ ╚══════╝╚══════╝╚═╝ ╚═════╝ ╚═╝  ╚═══╝╚══════╝╚═╝  ╚═╝

📱 UI UX Designer

Mobile-first UI and UX design skills that also work on tablet and desktop, for designers, developers and their agents.

Validate skills License: MIT Agent skills Format Tooling

Table of contents:


Important

Principle: design for the smallest screen, the thumb and the slowest moment first, then add space for larger screens without removing function, and never trade accessibility for looks.

These skills help an agent design, review and document interfaces for phones first, then tablets and desktops. They are grounded in Apple's Human Interface Guidelines, Android and WCAG 2.2 guidance, Nielsen Norman Group research, and the Toptal and Mockflow mobile UX articles, and every number is attributed to its source. They follow the open Agent Skills format and work in Claude Code, Codex, Cursor, Copilot, OpenCode or any SKILL.md-compatible agent.


🧩 Skills

SkillPurpose
accessible-designDo not use for general visual styling (visual-design-system), legal compliance claims, or writing accessibility code for a framework.
adaptive-layout-and-spacingCovers hierarchy, grouping, safe areas, edge-to-edge, size classes and reflow.
interaction-feedback-and-formsDo not use for navigation structure (navigation-and-flows), colour and type (visual-design-system) or a full accessibility audit (accessible-design).
mobile-ux-foundationsCovers research first, one primary action, feature prioritisation, mobile constraints (interruptions, one hand, weak signal) and onboarding.
navigation-and-flowsDo not use for form fields and messages (interaction-feedback-and-forms), screen spacing (adaptive-layout-and-spacing) or documenting site maps (ux-documentation-and-handoff).
ui-ux-designerRoutes mobile-first design work (UX principles, layout, navigation, feedback and forms, visual design, accessibility, documentation, review) to focused skills and enforces shared guardrails.
ux-documentation-and-handoffDo not use for choosing the design itself (the design skills), for running usability tests (ux-review-and-testing) or for software documentation such as a README.
ux-review-and-testingDo not use for designing a screen from scratch (the design skills), writing hand-off documents (ux-documentation-and-handoff) or a formal accessibility conformance claim (accessible-design).
visual-design-systemDo not use for a full accessibility audit (accessible-design), screen layout (adaptive-layout-and-spacing) or brand strategy and illustration.

🗺️ How they fit together

flowchart TD
    R["📱 ui-ux-designer<br/>routes and enforces mobile-first guardrails"]
    R --> F["🎯 mobile-ux-foundations<br/>research, priorities, constraints"]
    R --> L["📐 adaptive-layout-and-spacing<br/>hierarchy, safe areas, size classes"]
    R --> N["🧭 navigation-and-flows<br/>IA, tab bars, sheets, gestures"]
    R --> I["💬 interaction-feedback-and-forms<br/>feedback, forms, states, motion"]
    R --> V["🎨 visual-design-system<br/>type, colour, dark mode, tokens"]
    R --> A["♿ accessible-design<br/>targets, contrast, WCAG 2.2"]
    R --> D["📝 ux-documentation-and-handoff<br/>personas, specs, hand-off"]
    R --> T["✅ ux-review-and-testing<br/>heuristics, usability tests"]

A typical project runs foundations first, then layout and navigation, then interaction and visual design, with accessibility checked throughout, documentation written as decisions settle, and review before release.


📦 Install

Tip

Install the router skill plus every sibling skill it links to; routers reference siblings by relative path.

Claude Code plugin (installs the skills and any agent profiles together):

/plugin marketplace add KinwiseNZ-DevOps/ui-ux-designer
/plugin install ui-ux-designer@ui-ux-designer-marketplace

Or copy or symlink the skills/ subfolders you want into your agent's skills directory:

AgentWhere skills live
Claude Code~/.claude/skills/ or a project's .claude/skills/
Codex · Cursor · Copilot · OpenCode · Windsurfthe agent's own SKILL.md discovery path

Always on

In Claude Code, UI UX Designer loads a short ruleset into sessions in app and UI projects once the plugin is installed. It enforces mobile first, source-attributed target sizes and contrast, full state specs and gesture alternatives. It tells you its state at the start of each session and costs roughly 450 tokens.

ModeWhat it does
onThe rules apply in every session
auto (default)The rules apply only in projects that look relevant: projects with a pubspec.yaml, React Native, Expo or Tailwind in package.json, Package.swift or an AndroidManifest.xml
offThe rules do not load
  • Say "stop design mode" to pause it for the current session, and "start design mode" to resume.
  • Ask Claude to set the saved mode to on, off or auto. It writes that word into ~/.claude/.ui-ux-designer.mode. You can also edit that file yourself, and deleting it returns to the default (auto).
  • It needs Node on the machine, because the start-up hook runs a small Node script. Without Node the hook quietly does nothing.
  • Other agents have no start-up hook here. Paste skills/ui-ux-designer/references/always-on-rules.md into that agent's instruction file instead.

Safety checks

The same hooks run a few checks while you work. Each one only asks, warns or adds a reminder; none changes your files on its own.

CheckWhat it doesOn by default
dangerGuardAsks before risky commands: force pushes, git reset --hard, rm -r, dropping data, docker compose down -v, publishing a packageYes
secretsGuardAsks before writing keys, tokens or .env filesYes
packageGuardAsks if a package about to be installed does not exist on PyPI, npm or pub.dev, because the name may be inventedYes
licenseGuardWarns after installing an npm or PyPI package with a GPL-family licenceYes
editSecurityReminds Claude about risky code it just wrote: eval, SQL built from strings, unescaped HTML, tokens in SharedPreferencesYes
promptGuardWarns when pasted text looks like it is trying to steer the agentYes
verifyReminderTells you at the end of a turn if code changed but no tests, lint or analysis ranYes
linkGuardWarns about links that return "not found" in Markdown, HTML and JSX files writtenNo
styleGuardWarns when a reply is over 200 words or uses an em or en dash (built for AI Kiwiniser's style)No
sessionLogWrites tool names and file names, never content, to ~/.claude/logs/ui-ux-designer/No
autoCommitSaves tracked changes as a local commit at the end of a turn. It never pushesNo

Switch any check with ~/.claude/.ui-ux-designer.features.json, for example {"packageGuard": false, "sessionLog": true}, or ask Claude to write it. The saved mode (on, off or auto) applies to every check. If several of these plugins are installed, each risky action is checked once, not once per plugin.

Privacy: packageGuard and licenseGuard send package names, and linkGuard sends the links it checks, to the public registry or site. Nothing else leaves your machine. Turn those checks off if that is a concern.

🚀 Usage

Tip

You never need to memorise skill names. Just describe the problem in plain words; the router picks the right skill automatically. But if you want short, reliable phrases that always work, use these:

The flow (this is all most people need):

1. "Plan the core flow for my app"            → foundations, then navigation and flows
2. "Design the settings screen for phone and tablet"   → layout, interaction and visual skills
3. "Review this flow for usability"             → ux-review-and-testing, with accessible-design

Short phrases that trigger each skill:

Just say…What you getSkill used
What should version one include?a prioritised core task and research planmobile-ux-foundations
Make this work on tabletadaptive layout per size classadaptive-layout-and-spacing
Tab bar or menu?a navigation pattern with reasonsnavigation-and-flows
Write the error and empty statesstates, messages and form rulesinteraction-feedback-and-forms
Check the contrast and typetokens and contrast ratiosvisual-design-system
Is this accessible?a scoped checklist against WCAG 2.2 AAaccessible-design
Write the hand-off notesstate matrix, copy, specsux-documentation-and-handoff
Review this for usabilityranked findings with evidenceux-review-and-testing

Note

Skills also trigger on their own when your request matches. In Claude Code you can also invoke one explicitly with /<skill-name>, but the plain phrases above are shorter and work across every agent.


✅ Validate

python scripts/skills_tool.py check

Checks: frontmatter, name/folder match, description length and trigger, body under 500 lines, every relative link resolves (including README.md and AGENTS.md), agent profile naming with no more than two profiles per host and exactly one -workflow main agent, agent skills: entries that exist and no skills/<name>/SKILL.md paths in agent bodies, plugin manifests (.claude-plugin/plugin.json and marketplace.json: required fields, licence matches LICENSE, agents lists every Claude Code profile, no top-level agents/ folder), at least 3 eval cases per skill, catalogue freshness, no project-specific terms from reference-content/strip-terms.txt, and no em or en dashes in file names or in any text outside reference-content/. After the starter skill is deleted it also rejects leftover placeholders and setup-only paths that are tracked by Git or not ignored. Stdlib only, no dependencies.


🗂️ Layout

Repository layout

skills/<name>/SKILL.md      one folder per skill (+ references/ where needed)
CHANGELOG.md                release notes; scripts/bump_version.py rolls them
.claude-plugin/             plugin.json and marketplace.json (Claude Code plugin)
plugin.json                 portable plugin manifest for Codex
.agents/plugins/            marketplace.json for Codex
hooks/                      always-on rules and safety checks for Claude Code
evals/cases.jsonl           3+ behavioural cases per skill
evals/triggers.jsonl        triggering tests per skill: obvious, paraphrase, unrelated
quality/evals/              the same cases exported for `claude plugin eval` (generated)
resources/agents/             optional host profiles copied by installer
scripts/install_agents.py     copy optional agent profiles into a project
scripts/skills_tool.py      validate, regenerate catalogue (stdlib only)
.github/workflows/          CI runs `skills_tool.py check` (free on public repos)
AGENTS.md                   agent-facing rules for this repo
SETUP.md                    local checklist; ignored and kept off GitHub
reference-content/          private source material; ignored and kept off GitHub
templates/                  local skill scaffolding; ignored and kept off GitHub

📌 Status and limits

Note

  • 26 October 2026: guidance is design advice, not a legal accessibility conformance claim; the skills state which criteria were checked.
  • 26 October 2026: one requested article (Medium) returned HTTP 403 and Material Design 3 pages could not be read; Android developer pages stand in for Material guidance.
  • Licensed under MIT (see LICENSE).

⚡ Built on the Agent Skills open format · grounded in Apple HIG, WCAG 2.2 and Android design