erichowens

ux-friction-analyzer

20
3
# Install this skill:
npx skills add erichowens/some_claude_skills --skill "ux-friction-analyzer"

Install specific skill from multi-skill repository

# Description

Comprehensive UX analysis using cognitive psychology, ADHD-friendly design, Gestalt principles, and flow state engineering. Specializes in friction audits, user journey simulation, cognitive load optimization, and Fitts' Law application. Activate on "analyze UX", "friction audit", "user journey", "ADHD-friendly", "optimize flow", "reduce cognitive load", "UX audit", "conversion optimization". NOT for visual design execution (use web-design-expert), A/B testing implementation (use frontend-developer), or accessibility compliance auditing (use accessibility-auditor).

# SKILL.md


name: ux-friction-analyzer
description: Comprehensive UX analysis using cognitive psychology, ADHD-friendly design, Gestalt principles, and flow state engineering. Specializes in friction audits, user journey simulation, cognitive load optimization, and Fitts' Law application. Activate on "analyze UX", "friction audit", "user journey", "ADHD-friendly", "optimize flow", "reduce cognitive load", "UX audit", "conversion optimization". NOT for visual design execution (use web-design-expert), A/B testing implementation (use frontend-developer), or accessibility compliance auditing (use accessibility-auditor).
allowed-tools: Read,Write,Edit,WebFetch
category: Design & Creative
tags:
- ux
- accessibility
- cognitive-load
- adhd-friendly
- user-research
pairs-with:
- skill: web-design-expert
reason: Implement UX recommendations
- skill: adhd-design-expert
reason: Deep neurodivergent design patterns
- skill: frontend-developer
reason: Technical implementation of UX fixes


UX Friction Analyzer

A comprehensive skill for analyzing and optimizing user experience through cognitive psychology, ADHD-friendly design, and flow state engineering.

Activation

Use this skill when:
- Designing new interfaces or user flows
- Auditing existing UX for friction points
- Optimizing for neurodivergent users (ADHD, autism)
- Simulating user journeys before building
- Reducing cognitive load in complex applications

Trigger phrases: "analyze UX", "friction audit", "user journey", "ADHD-friendly", "optimize flow", "reduce cognitive load"


Core Frameworks

1. ADHD-Friendly Design Principles

Apply these patterns to ALL interfaces:

Principle Implementation Why It Matters
Progressive Disclosure Show one task at a time; hide future steps Prevents overwhelm, maintains focus
Context Preservation Auto-save every keystroke; never lose work Reduces anxiety about losing progress
Gentle Reminders Status updates, not alarms; no red urgency Avoids panic, maintains calm
Pause & Resume Session state persists across days/weeks Respects inconsistent schedules
Minimal Distractions Single focus area; dim non-active panels Reduces competing stimuli
Chunked Progress Visual cards/steps, not endless scrolling Creates completion dopamine hits
Predictable Navigation Same layout always; no surprises Reduces reorientation cost
Calm Mode Option Reduced animations, muted colors on demand Accommodates sensory sensitivity

2. Gestalt Psychology

Apply these perception principles:

PROXIMITY
─────────
Elements close together = perceived as related
White space creates natural boundaries

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Related β”‚  β”‚ Related β”‚     β”‚ Other   β”‚  β”‚ Other   β”‚
β”‚ Item A  β”‚  β”‚ Item B  β”‚     β”‚ Group A β”‚  β”‚ Group B β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
     ↑ CLOSE = GROUPED            ↑ SEPARATE = DISTINCT

SIMILARITY
──────────
Same color/shape/size = perceived as related function

β”Œβ”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”
β”‚ BLUE β”‚  β”‚ BLUE β”‚  β”‚ BLUE β”‚     β”‚ CORALβ”‚  β”‚ CORALβ”‚
β”‚ Save β”‚  β”‚ Copy β”‚  β”‚ Edit β”‚     β”‚ Del  β”‚  β”‚ Clearβ”‚
β””β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”˜
     ↑ SAME = Related actions         ↑ DIFFERENT = Destructive

CONTINUITY
──────────
Eye follows lines/paths naturally

Step 1 ──→ Step 2 ──→ Step 3 ──→ Complete
   ●──────────●──────────●──────────●

CLOSURE
───────
Brain completes incomplete shapes
Use for progress indicators, loading states

[ β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–‘β–‘β–‘β–‘β–‘β–‘β–‘β–‘ ] 50% - brain "sees" the end

3. Cognitive Load Theory

Three types of mental load to manage:

Type Definition Strategy
Intrinsic Task complexity itself Can't eliminate; acknowledge it
Extraneous Poor design adding effort ELIMINATE THIS - your job
Germane Learning/understanding Minimize for repeat users

Working Memory Limits:
- 7Β±2 items maximum (Miller's Law)
- 4 chunks optimal for complex tasks
- Micro-breaks every 25 minutes

Reduce Extraneous Load By:
- Removing unnecessary choices
- Using recognition over recall
- Providing smart defaults
- Eliminating decorative elements that don't inform

4. Fitts' Law

Time to acquire target = f(Distance / Size)

IMPLICATIONS FOR BUTTONS:
─────────────────────────

  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”          vs          β”Œβ”€β”€β”
  β”‚     GENERATE      β”‚                      β”‚Goβ”‚
  β”‚                   β”‚                      β””β”€β”€β”˜
  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
         ↑                                     ↑
  44px+ touch target                   Hard to hit
  Easy to acquire                      Frustrating

MINIMUM SIZES:
- iOS: 44x44 CSS pixels
- Android: 48x48 CSS pixels
- Desktop: 32x32 minimum, 44x44 preferred

EDGE TARGETS ARE INFINITE:
  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
  β”‚ β–  LOGO                                    MENU β–    β”‚
  β”‚                                                     β”‚
  β”‚   Screen edges = can't overshoot                   β”‚
  β”‚   Place critical actions at corners/edges          β”‚
  β”‚                                                     β”‚
  β”‚ β–  HELP                                  EXPORT β–    β”‚
  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

ICON + LABEL > ICON ALONE:
- Larger target area
- Reduced ambiguity
- Faster acquisition

5. Flow State Engineering

Key Metrics:
- 15-25 minutes to enter flow state
- 23 minutes to recover from interruption
- 40% productivity loss with frequent interruptions
- Only 41% of work time spent in flow (McKinsey)

Flow Conditions:
1. Clear goals for the current task
2. Immediate feedback on actions
3. Balance between challenge and skill
4. No anxiety about failure

Preserve Flow By:
- Background processing (don't block UI)
- Push notifications when ready (bring user back faster)
- Quick re-orientation panels after breaks
- Auto-save eliminating "save anxiety"
- Undo everything (confidence to experiment)


Analysis Methodology

Step 1: Create Decision Tree

Map every user path with probabilities:

                    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                    β”‚ USER LANDS  β”‚
                    β””β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”˜
                           β”‚
           β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
           β–Ό               β–Ό               β–Ό
     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
     β”‚ Action A β”‚   β”‚ Action B β”‚   β”‚ Action C β”‚
     β”‚  (40%)   β”‚   β”‚  (45%)   β”‚   β”‚  (15%)   β”‚
     β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜   β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜   β””β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”˜
          β”‚              β”‚              β”‚
          β–Ό              β–Ό              β–Ό
        [Next]         [Next]         [Next]

For each edge, record:
- Probability (%)
- Friction score (1-10)
- Time to complete (seconds/minutes)
- Cognitive load (low/medium/high)

Step 2: Simulate User Journeys

Create detailed simulations for each persona:

Template:

TIME    ACTION                           COGNITIVE STATE           FRICTION
─────────────────────────────────────────────────────────────────────────────
0:00    [User action]                    [Mental state]            Low/Med/High
        └─ [System response or UI shown]

0:15    [Next action]                    [How they feel]           Low/Med/High
        └─ [What happens]
        └─ PROBLEM: [Friction point if any]

...continue...
─────────────────────────────────────────────────────────────────────────────
TOTAL TIME: X minutes
FRICTION POINTS: N (list them)
ABANDONMENT RISKS: N (critical moments)
DELIGHT MOMENTS: N (positive surprises)

Personas to simulate:
1. Expert User - Knows the system, moving fast
2. New User - First time, needs guidance
3. Distracted User - Context switching, interruptions
4. Explorer - No goal, seeing what's possible
5. Completer - Trying to finish, hitting obstacles

Step 3: Friction Analysis Matrix

Quantify and prioritize:

Friction Point Users Affected Severity (1-10) Fix Difficulty Priority Score
[Issue 1] X% N Easy/Med/Hard HIGH/MED/LOW
[Issue 2] X% N Easy/Med/Hard HIGH/MED/LOW

Priority Formula:

Priority = (Users Affected Γ— Severity) / Fix Difficulty

Step 4: Impedance Mapping

Compare current vs ideal:

TASK                          CURRENT IMPEDANCE     IDEAL IMPEDANCE
────────────────────────────────────────────────────────────────────
[Task 1]                      Low (X sec)           βœ“ Optimal
[Task 2]                      Medium (X sec)        Could be Y sec
[Task 3]                      HIGH (X min)          Should be Y sec

Step 5: Time-Loss Analysis

Calculate context switch costs:

Action                        Frequency    Time Lost Each    Total Impact
─────────────────────────────────────────────────────────────────────────
[Interruption type 1]         X/session    Y min             Z min
[Interruption type 2]         X/session    Y min             Z min
─────────────────────────────────────────────────────────────────────────
TOTAL CONTEXT SWITCH LOSS                                    Z min/session

Optimization Patterns

Immediate Fixes (Low Effort, High Impact)

  1. Giant CTA on Landing
    html <button class="cta" style="min-height: 60px; min-width: 200px;"> Primary Action <span class="subtext">Supporting text</span> </button>

  2. Visible Edit Affordances

  3. Show pencil/edit icons by default, not just on hover
  4. Add tooltips: "Click to edit"

  5. Auto-Fill Prompts

  6. After user completes 1 item manually, offer to auto-complete rest
  7. "Want me to fill in the remaining X items?"

  8. Floating Action Buttons

  9. Critical actions always visible (not buried in menus)
  10. Bottom-right for mobile thumb zone

  11. Progress Indicators

  12. Show "Step X of Y" always
  13. Visual progress bar at top

Medium-Term Improvements

  1. Re-Orientation Panels
    β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ Welcome back! Here's where you left off: β”‚ β”‚ β”‚ β”‚ βœ“ Step 1: Complete β”‚ β”‚ β†’ Step 2: In progress (60%) β”‚ β”‚ β—‹ Step 3: Not started β”‚ β”‚ β”‚ β”‚ [Continue where I left off] β”‚ β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

  2. Keyboard Shortcuts

  3. Number keys for mode switching (1, 2, 3...)
  4. Cmd+Enter for primary action
  5. Escape for cancel/close

  6. Background Processing

  7. Never block UI for long operations
  8. Show progress, allow user to continue
  9. Push notification when complete

  10. Smart Defaults

  11. Pre-fill based on user history
  12. Remember last-used settings
  13. Suggest most common option first

Long-Term Vision

  1. Predictive UI
  2. Anticipate next action based on patterns
  3. Pre-load likely next screens
  4. Suggest before user asks

  5. Personalized Complexity

  6. Simple mode for new users
  7. Power user mode unlocks over time
  8. User controls their complexity level

  9. Accessibility Suite

  10. High contrast mode
  11. Reduced motion option
  12. Screen reader optimization
  13. Keyboard-only navigation

Checklist for New Features

Before shipping any feature, verify:

Cognitive Load

  • [ ] Can user complete with ≀4 things in working memory?
  • [ ] Are there unnecessary choices that could be defaults?
  • [ ] Is recognition used instead of recall?

ADHD-Friendly

  • [ ] Can user pause and resume without losing context?
  • [ ] Are there gentle progress indicators (not anxiety-inducing)?
  • [ ] Is the interface calm (not visually noisy)?

Fitts' Law

  • [ ] Are primary buttons β‰₯44px tall?
  • [ ] Are destructive actions away from common paths?
  • [ ] Do buttons have labels, not just icons?

Flow Preservation

  • [ ] Does any action block the UI for >2 seconds?
  • [ ] Can long operations run in background?
  • [ ] Is there a clear "done" state?

Error Recovery

  • [ ] Can every action be undone?
  • [ ] Are error messages actionable (not just "Error")?
  • [ ] Is auto-save enabled?

Example Analysis Output

When running this skill, produce a document with:

  1. Executive Summary - Key findings in 3 bullets
  2. Decision Tree - All user paths with probabilities
  3. User Journey Simulations - 3-5 personas, full timeline
  4. Friction Matrix - Prioritized issues table
  5. Optimization Recommendations - Immediate/Medium/Long-term
  6. Implementation Checklist - Specific changes to make

Integration Points

  • web-design-expert: Implement UX recommendations visually
  • adhd-design-expert: Deep neurodivergent design patterns
  • frontend-developer: Technical implementation of fixes
  • diagramming-expert: Create user flow diagrams

Sources


Core Philosophy: Every click, every second of confusion, every moment of "where am I?" is friction stealing from your users. Design for the distracted, optimize for the overwhelmed, and everyone benefits.

# Supported AI Coding Agents

This skill is compatible with the SKILL.md standard and works with all major AI coding agents:

Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.