Laws Of Ux logo

Laws Of Ux

Community
alpham8
laws-of-ux

Apply evidence-based UX laws to interaction design decisions. Use when you need to: (1) size and position interactive targets effectively, (2) reduce cognitive load and decision complexity, (3) design progress indicators, feedback timing, and memory-friendly interfaces, (4) resolve design trade-offs with psychological evidence. Based on Laws of UX by Jon Yablonski, synthesising research from psychology, cognitive science, and HCI.

Overview

Publisheralpham8
Repositoryagentic-webdev
Skill namelaws-of-ux
Stars
4
Forks
0
Bundled files
3
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 3 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by alpham8 on GitHub. Read the source before you install it.

Installation

Install the Laws Of Ux AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/alpham8/agentic-webdev/tree/master/skills/wondelai/laws-of-ux
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/alpham8/agentic-webdev.git /tmp/agentic-webdev
mkdir -p .claude/skills
cp -r /tmp/agentic-webdev/skills/wondelai/laws-of-ux .claude/skills/laws-of-ux
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Laws Of Ux in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Laws Of Ux on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Laws Of Ux is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

Laws of UX

A framework of behavioural psychology principles applied to interface design. These laws describe how humans perceive, decide, and act -- use them to design interfaces that work with human cognition, not against it.

This skill focuses on behavioural laws (Fitts's, Hick's, Miller's, etc.). For usability heuristics, see ux-heuristics. For visual grouping principles, see gestalt-ui.

Core Principle

Design for how humans actually behave, not how they should behave. Users don't read -- they scan. They don't optimise -- they satisfice. They don't remember -- they recognise. Every interaction design decision should be grounded in observable human behaviour, not designer assumptions.

Scoring

Goal: 10/10. When reviewing or designing interactions, rate 0-10 based on alignment with these behavioural laws.

  • 9-10: Interactive targets are appropriately sized and placed. Choices are manageable. Response times feel instant. Progress is visible. Memory load is minimal.
  • 7-8: Most interactions follow the laws. Minor issues: a few small targets, one overloaded menu, occasional missing feedback.
  • 5-6: Some laws applied, others ignored. Noticeable friction: too many choices, missing progress indicators, slow feedback.
  • 3-4: Significant violations. Small touch targets, overwhelming option lists, no loading feedback, heavy memory demands.
  • 1-2: Laws systematically violated. Interface fights human cognition at every step.

The Laws of UX Framework

1. Fitts's Law -- Size and Distance Matter

Core concept: The time to reach a target is a function of the distance to and size of the target. Larger, closer targets are faster and easier to hit.

Why it works: Motor control follows a logarithmic speed-accuracy trade-off. Smaller targets require slower, more precise movements.

Key insights:

  • Minimum touch target: 44x44 CSS pixels (10mm x 10mm physical, per MIT Touch Lab)
  • Add padding between adjacent interactive elements to prevent mis-taps
  • Screen edges and corners are effectively infinite-size targets (cursor stops at edge)
  • Place frequently used actions near the cursor's resting position or thumb zone
  • Primary actions should be the largest interactive elements in their context

Product applications:

ContextApplicationExample
MobileThumb-zone placement for primary actionsFAB button in bottom-right (right-handed), tab bar at bottom
FormsFull-width submit buttons on mobile"Continue" button spanning the viewport width
NavigationAdequately sized menu items with padding44px minimum height per nav link, 8px gap between
DialogsLarge, separated action buttons"Delete" and "Cancel" with generous spacing and size

Ethical boundary: Never make important actions (unsubscribe, delete account, reject cookies) deliberately small or hard to reach.

See: references/motor-laws.md

2. Hick's Law -- Fewer Choices, Faster Decisions

Core concept: Decision time increases logarithmically with the number and complexity of choices. More options = more cognitive effort = slower action.

Why it works: Each additional option requires evaluation and comparison. The brain processes choices sequentially, not in parallel.

Key insights:

  • Limit top-level navigation to 5-7 items
  • Use progressive disclosure: show details on demand, not all at once
  • Break complex processes into sequential steps (wizards over mega-forms)
  • Highlight recommended options to reduce decision effort
  • Categorise long lists instead of presenting flat lists
  • "Choice overload" causes decision paralysis when options exceed ~4 meaningful alternatives

Product applications:

ContextApplicationExample
NavigationMaximum 5-7 top-level itemsMain nav: Home, Products, Pricing, Docs, Blog
Pricing3 plans with highlighted recommendationFree / Pro (recommended) / Enterprise
SettingsGrouped into categories, not one long listAccount, Notifications, Privacy, Billing -- each expandable
OnboardingOne question per screenStep 1: Role → Step 2: Team size → Step 3: Goals
SearchFiltered results with facetsCategory tabs + sort options, not 500 unsorted results

See: references/decision-laws.md

3. Miller's Law -- Chunk Information

Core concept: Working memory holds approximately 7 +/- 2 items. Beyond this, information overflows and is forgotten or confused.

Why it works: Short-term memory has a fixed capacity. Chunking groups individual items into meaningful units, effectively multiplying capacity.

Key insights:

  • Break long sequences into chunks: (555) 123-4567 not 5551234567
  • Limit items per group to 5-9 (navigation sections, tab groups, option lists)
  • Use headings and visual separators to chunk content on a page
  • Don't interpret this as "menus must have exactly 7 items" -- it's about cognitive load, not a magic number

Product applications:

ContextApplicationExample
Phone numbersChunked with formatting+49 (171) 234-5678
Credit cards4-digit groups4242 4242 4242 4242
Long formsGrouped into sectionsPersonal info (3 fields) → Address (4 fields) → Payment (3 fields)
DashboardsMetrics grouped into panelsRevenue panel (3 KPIs), Users panel (3 KPIs), Performance panel (3 KPIs)

See: references/memory-laws.md

4. Jakob's Law -- Users Expect Convention

Core concept: Users spend most of their time on other sites. They prefer your interface to work the same way as interfaces they already know.

Why it works: Familiar patterns leverage existing mental models. Users don't need to learn new interactions -- they transfer knowledge from past experience.

Key insights:

  • Logo top-left links to home (universal convention)
  • Search in the top-right or top-centre
  • Shopping cart icon for e-commerce
  • Hamburger menu = hidden navigation (mobile)
  • "Settings" = gear icon; "Profile" = avatar/circle
  • Innovate on content and value, not on basic interaction patterns
  • When you must break convention, provide clear signifiers and instructions

Product applications:

ContextApplicationExample
E-commerceStandard cart/checkout flowCart icon with badge → Cart page → Checkout → Confirmation
SaaSStandard dashboard layoutSidebar nav + top bar + main content area
AuthStandard login/signup patternsEmail + password + "Forgot password?" + social login
MobilePlatform-specific patternsiOS: back in top-left; Android: back via system gesture

Critical rule: Every deviation from convention must earn its place. If users need to learn something new, the benefit must clearly outweigh the learning cost.

See: references/decision-laws.md

5. Doherty Threshold -- Speed Builds Flow

Core concept: Productivity soars when response time is under 400ms. Above this, users perceive a delay and lose their sense of flow.

Why it works: Below 400ms, the interaction feels instantaneous -- the brain doesn't register waiting. Above it, the user's attention shifts from the task to the system.

Key insights:

  • < 100ms: Feels instantaneous. No feedback needed for direct manipulation (clicks, toggles)
  • 100-400ms: Subtle indicator (button state change, micro-animation)
  • 400ms-2s: Spinner or skeleton screen required
  • 2-10s: Progress bar with percentage
  • 10s: Progress bar + status messages explaining what's happening

  • Use optimistic UI: show the result immediately, sync in the background
  • Animate transitions (300-500ms) to mask loading time

Product applications:

ContextApplicationExample
Form submissionOptimistic success state"Message sent!" appears immediately; actual API call happens in background
Page navigationSkeleton screensGrey placeholder blocks matching the layout, replaced by real content
Data loadingProgressive loadingTable header + first rows appear instantly; remaining rows stream in
SearchDebounced live resultsResults update 200ms after user stops typing

See: references/motor-laws.md

6. Von Restorff Effect -- Distinctiveness Creates Memory

Core concept: When multiple similar objects are present, the one that differs from the rest is most likely to be remembered.

Why it works: The brain allocates more attention and memory to novel or distinctive stimuli. Contrast is a survival mechanism.

Key insights:

  • Make the primary CTA visually distinct from all other buttons
  • Highlight the recommended pricing plan with a different style
  • Use distinctive styling for important notifications or alerts
  • Sparingly: if everything is highlighted, nothing stands out (see Focal Points in gestalt-ui)
  • Accessibility: don't rely on colour alone for distinctiveness -- use size, shape, position, and text

Product applications:

ContextApplicationExample
PricingRecommended plan visually different"Pro" plan with coloured border, "Popular" badge, slightly larger
CTAsPrimary button distinct from secondaryBlue filled "Submit" among grey outlined "Cancel" and "Back"
NotificationsCritical alerts visually uniqueRed banner for errors among blue info notifications
TablesImportant row highlightedOverdue invoice row with coloured background

7. Peak-End Rule -- Moments That Matter

Core concept: People judge an experience by its peak moment (most intense point) and its ending, not by the average of all moments.

Why it works: Memory is constructive, not comprehensive. The brain stores emotional highlights and the final state, then generalises from those.

Key insights:

  • Optimise the first impression (landing, onboarding) and the final interaction (confirmation, thank-you)
  • Error recovery is a peak moment -- handle it gracefully and users forgive other friction
  • A frustrating checkout can ruin an otherwise excellent browsing experience
  • Celebratory moments (achievement unlocked, order confirmed) create positive peaks
  • The last step of any flow disproportionately influences overall satisfaction

Product applications:

ContextApplicationExample
OnboardingDelightful first experiencePersonalised welcome, quick first success ("Your workspace is ready!")
CheckoutSmooth final step + celebrationConfetti animation on order confirmation
Error recoveryHelpful, specific error messages"Payment failed -- try a different card or contact support" with direct link
CancellationRespectful exit experience"We're sorry to see you go" with clear confirmation, no guilt-tripping

8. Aesthetic-Usability Effect -- Beauty Buys Tolerance

Core concept: Users perceive aesthetically pleasing designs as more usable, even when they're objectively not.

Why it works: Visual appeal creates positive emotional responses that bias perception. Users are more patient, more forgiving, and more willing to explore beautiful interfaces.

Key insights:

  • Visual polish increases tolerance for minor usability issues
  • First impressions are disproportionately influenced by visual quality
  • But: aesthetics cannot compensate for fundamentally broken interactions
  • Invest in visual refinement after getting the interaction model right
  • A beautiful but unusable interface is worse than an ugly but functional one

9. Tesler's Law -- Complexity Must Live Somewhere

Core concept: Every system has irreducible complexity that cannot be eliminated. The question is whether the user or the system deals with it.

Why it works: Complexity is conserved -- simplifying the user's experience means the system absorbs that complexity. The goal is to move complexity away from the user wherever possible.

Key insights:

  • Smart defaults reduce decisions the user must make
  • Auto-detection (location, language, currency, timezone) absorbs complexity
  • Pre-filling forms with known data moves complexity to the system
  • But: don't hide essential controls behind too much "magic" -- users need to feel in control
  • The simplest UI is not always the best UI -- sometimes showing complexity is appropriate (power tools)

Product applications:

ContextApplicationExample
FormsSmart defaultsCountry pre-selected based on IP, currency auto-set
SearchAuto-correct and suggestions"Did you mean..." + filtered suggestions
SettingsSensible defaults with override optionNotifications on by default, customisable per channel
SchedulingTimezone auto-detection"Meeting at 3pm your time (PST)"

10. Postel's Law -- Be Forgiving with Input

Core concept: Be liberal in what you accept, conservative in what you send. Accommodate varied input; produce clean output.

Why it works: Users input data in unpredictable formats. Fighting their format creates friction. Accepting and normalising silently creates flow.

Key insights:

  • Accept phone numbers with or without country code, spaces, dashes, parentheses
  • Accept dates in multiple formats and normalise to one display format
  • Trim whitespace, fix capitalisation, strip formatting silently
  • Display output in a clean, consistent format regardless of input
  • Forgive typos in search (fuzzy matching, "did you mean...?")

Product applications:

ContextApplicationExample
Phone inputAccept any format+1 555 123 4567, (555) 123-4567, 5551234567 all valid
Date inputAccept multiple formats12/25/2025, 25.12.2025, Dec 25 2025 all parsed correctly
SearchFuzzy matching"javascrpt" → shows results for "javascript"
NamesFlexible validationAccept O'Brien, García, 山田, hyphenated names

11. Goal-Gradient Effect -- Proximity to Finish Motivates

Core concept: Motivation increases as users approach their goal. The closer to completion, the harder they'll work.

Why it works: Progress toward a visible goal triggers dopamine release. The brain rewards effort more as the finish line approaches.

Key insights:

  • Show progress bars in multi-step processes
  • Start progress slightly filled (artifical advancement increases completion)
  • "Step 2 of 4" is more motivating than showing all steps as equally distant
  • Checklists with some items pre-checked leverage this effect
  • Loyalty programs and streaks use goal-gradient extensively

Product applications:

ContextApplicationExample
OnboardingProgress bar with steps completed"Profile 60% complete -- add a photo to reach 80%"
CheckoutStep indicator with progressSteps 1-4 with current position highlighted
GamificationAchievement nearly unlocked"3 more reviews to earn Gold Reviewer badge"
FormsSection progress within long forms"Section 2 of 3: Shipping Details"

Combining Laws

Laws work together. The strongest designs apply multiple laws simultaneously:

CombinationEffectExample
Fitts + HickLarge targets + few choices = fast action3 large pricing plan buttons
Miller + Goal-GradientChunked steps + progress visibility4-step wizard with progress bar
Jakob + PostelConventional layout + flexible inputStandard checkout flow accepting varied address formats
Doherty + Peak-EndFast responses + celebratory endingInstant "Added to cart" + confetti on order confirmation
Von Restorff + FittsDistinctive + large = unmissable CTAOne bright, large "Get Started" button on muted page

Common Mistakes

MistakeLaw ViolatedFix
Tiny click/tap targetsFitts's LawMinimum 44x44px; add padding between targets
15+ navigation items in one levelHick's LawCategorise into 5-7 groups; use progressive disclosure
Requiring users to remember values between screensMiller's LawShow context persistently; use breadcrumbs and summaries
Reinventing standard interaction patternsJakob's LawFollow conventions; innovate on value, not on UI mechanics
No feedback for actions > 400msDoherty ThresholdAdd spinners, skeleton screens, or optimistic UI
Every element equally emphasisedVon Restorff EffectOne focal point per context; mute everything else
Frustrating final step in a flowPeak-End RulePolish the ending: confirmation, success animation, next steps
Rejecting valid but oddly-formatted inputPostel's LawParse and normalise silently; accept what you can
No progress indicator in multi-step processGoal-Gradient EffectShow step count, progress bar, or checklist

Quick Diagnostic

QuestionIf NoAction
Are all touch targets >= 44x44px?Fitts violationIncrease size; add padding
Can users complete the primary task in < 3 decisions?Hick violationReduce choices; use progressive disclosure
Is information chunked into groups of <= 7?Miller violationGroup, chunk, and label information
Does the interface follow platform conventions?Jakob violationAudit against standard patterns; align
Is feedback visible within 400ms of every action?Doherty violationAdd optimistic UI, skeletons, or spinners
Is there exactly one visually dominant CTA per view?Von Restorff gapEmphasise one; de-emphasise others
Is the final step of key flows polished and positive?Peak-End gapAdd confirmation, celebration, clear next steps

Reference Files

Further Reading

  • Jon Yablonski, Laws of UX
  • Paul Fitts, "The Information Capacity of the Human Motor System" (1954)
  • William Hick, "On the Rate of Gain of Information" (1952)
  • George Miller, "The Magical Number Seven" (1956)

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Laws Of Ux AI skill do?

Apply evidence-based UX laws to interaction design decisions. Use when you need to: (1) size and position interactive targets effectively, (2) reduce cognitive load and decision complexity, (3) design progress indicators, feedback timing, and memory-friendly interfaces, (4) resolve design trade-offs with psychological evidence. Based on Laws of UX by Jon Yablonski, synthesising research from psychology, cognitive science, and HCI.

Why use Laws Of Ux on TypingMind?

Because you install it once and use it with any model. Laws Of Ux is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Laws Of Ux in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/alpham8/agentic-webdev/tree/master/skills/wondelai/laws-of-ux. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Laws Of Ux?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Laws Of Ux?

As many as you like. As long as a model supports skills, you can use Laws Of Ux with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Laws Of Ux AI skill free?

Yes. It is published on GitHub by alpham8 under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇