ux-design-principles/SKILL.md
Apply UX psychology and usability principles when building user interfaces. Distills Laws of UX (Fitts's, Hick's, Jakob's, Miller's, Peak-End, Von Restorff, Tesler's, Doherty, Postel's, Aesthetic-Usability), Don't Make Me Think usability heuristics, and lightweight UX process methods into actionable code-level guidance. Use when building UI components, reviewing interfaces for usability, reducing cognitive load, designing navigation or forms, choosing interaction patterns, or auditing for dark patterns. Does NOT cover typography, color palettes, responsive CSS, or design tokens — see related skills.
npx skillsauth add kayaman/skills ux-design-principlesInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Psychology-backed decision framework for agents building user interfaces.
Reference: Laws of UX, 2nd Ed. (Yablonski, O'Reilly), Don't Make Me Think, Revisited (Krug, New Riders), The User Experience Team of One (Buley, Rosenfeld Media)
These principles derive from human cognition, not trends. They apply regardless of framework, platform, or era.
Don't use for: typography decisions, color/palette generation, responsive CSS layout, or design token creation.
Apply these to every UI element you build:
| Decision | Governing Principle | Code Check | |----------|-------------------|------------| | How many options to show? | Hick's Law: decision time increases with choices | Count visible interactive elements; >7 ungrouped needs progressive disclosure | | How big and close should targets be? | Fitts's Law: acquisition time = f(distance / size) | Interactive elements >= 44x44px; spacing between targets >= 8px; primary CTA largest | | Will users understand without thinking? | Krug's First Law: don't make me think | Every label/button understandable without reading surrounding text; verb+noun format | | How much can users hold at once? | Miller's Law: ~7 chunks in working memory | Ungrouped lists, nav items, form fields: chunk into groups of 3-5 | | Does this match what users already know? | Jakob's Law: users transfer expectations | Compare pattern to platform/industry conventions; deviate only with strong justification |
Laws of UX — see references/laws-of-ux.md:
Usability Heuristics — see references/usability-heuristics.md:
UX Process — see references/ux-process.md:
Buttons and CTAs:
Forms:
Navigation:
Modals and Dialogs:
Lists and Menus:
Loading and Feedback:
400ms: loading indicator (Doherty)
1s: progress bar
10s: progress percentage or step count
Load these on demand for detailed guidance:
No related skills are listed yet. Add entries here only when corresponding skill directories exist in the repo.
tools
Guidance for designing charts, graphs, plots, dashboards, and data visualizations that communicate clearly and persuade. Use when creating or reviewing a visualization, choosing a chart type, picking a color palette, decluttering a busy graphic, fixing misleading axes or proportions, building a dashboard, annotating a figure, or turning data into a presentation, report, or data-driven story. Grounded in the standard data-visualization literature (Knaflic, Tufte, Cleveland & McGill, Cairo, Wilke, Munzner, Few, Berinato). Covers chart selection, graphical perception and encoding, color and accessibility, decluttering, graphical integrity, dashboards, and narrative. Does NOT cover building data pipelines or ETL, statistical modeling or analysis methods, BI tool/vendor selection, or general UI/UX layout (see ux-design-principles). Tool-agnostic, with optional Python recipes.
development
Architect and implement production-grade microservices systems in TypeScript (NestJS) and Python (FastAPI), including resilience, observability, testing, deployment, and migration guidance.
development
--- name: databricks-genie-spaces-best-practices description: Design, configure, curate, govern, monitor, and integrate Databricks AI/BI Genie Spaces — the natural-language-to-SQL surface over Unity Catalog. Covers space scoping, general instructions, parameterized example SQL, SQL functions, trusted assets, JOIN configuration, knowledge store, certified queries, benchmarks, monitoring tab, feedback loops, the Genie Conversation API, governance via Unity Catalog (row filters, column masks, embed
tools
Implement OTP and passwordless authentication on AWS for TypeScript projects using Cognito CUSTOM_AUTH triggers (default) or a custom DynamoDB-backed flow, with SES (email) and SNS (SMS) delivery. Use when the user mentions OTP, one-time password, passwordless login, magic link, Cognito custom auth, DefineAuthChallenge, CreateAuthChallenge, VerifyAuthChallengeResponse, SES verification email, SNS SMS code, or MFA over email/SMS. Covers architecture decision (Cognito vs custom), Lambda trigger handlers, SES/SNS notifiers, DynamoDB schema with TTL, rate limiting, constant-time comparison, threat model (enumeration, replay, brute force), and aws-sdk-client-mock testing.