Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
dylantarre avatar

Feedback Indicators

  • 309 installs
  • 68 repo stars
  • Updated December 30, 2025
  • dylantarre/animation-principles

Animate buttons, forms, carts, and toggles with press states, success ticks, and error shakes so every tap, submit, and validation outcome gives immediate perceptible feedback.

About

Focuses on motion that confirms user input—button presses, loading states, success checkmarks, and error shakes—so every interaction communicates outcome immediately, reinforcing affordance and reducing uncertainty during forms and commerce flows.

  • Press and hover micro-feedback
  • Loading and success state motion
  • Error shake and validation cues
  • Form and checkout feedback patterns
  • Instant perceived responsiveness

Feedback Indicators by the numbers

  • 309 all-time installs (skills.sh)
  • Ranked #748 of 2,245 Frontend Development skills by installs in the Skillselion catalog
  • Data as of Aug 3, 2026 (Skillselion catalog sync)
npx skills add https://github.com/dylantarre/animation-principles --skill feedback-indicators

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs309
repo stars68
Last updatedDecember 30, 2025
Repositorydylantarre/animation-principles

What it does

Animate buttons, forms, carts, and toggles with press states, success ticks, and error shakes so every tap, submit, and validation outcome gives immediate perceptible feedback.

Files

SKILL.mdMarkdownGitHub ↗

Feedback Indicator Animations

Apply Disney's 12 principles to action confirmation animations.

Principle Application

Squash & Stretch: Success checkmarks can scale with overshoot. Compress on draw, expand on complete.

Anticipation: Brief gather before feedback appears. 50ms of preparation before the confirmation.

Staging: Feedback appears at the action location. Button shows checkmark, field shows validation.

Straight Ahead vs Pose-to-Pose: Define feedback states: neutral → processing → success/error.

Follow Through & Overlapping: Icon animates, then label appears. Stagger confirmation elements.

Slow In/Slow Out: Success: ease-out (confident arrival). Error: ease-in-out (shake settles).

Arcs: Checkmarks draw in arcs, not straight lines. Error X's cross naturally.

Secondary Action: Checkmark draws + color shifts + scale bounces for rich feedback.

Timing:

  • Instant feedback: 100-200ms (form validation)
  • Success confirmation: 300-500ms (checkmark draw)
  • Error indication: 400ms (shake + message)
  • Auto-dismiss: 2000-4000ms after appearance

Exaggeration: Success deserves celebration. Overshoot scale to 1.2, bold colors, confident motion.

Solid Drawing: Feedback icons must be clear at a glance. Recognition in 100ms or less.

Appeal: Positive feedback should feel rewarding. Negative feedback firm but not punishing.

Timing Recommendations

Feedback TypeDurationAuto-dismissEasing
Inline Validation150msNoease-out
Checkmark Draw400ms3000msease-out
Success Toast300ms4000msease-out
Error Shake400msNoease-in-out
Error Toast300ms6000msease-out
Save Indicator200ms2000msease-out

Implementation Patterns

/* Checkmark draw */
.checkmark {
  stroke-dasharray: 50;
  stroke-dashoffset: 50;
  animation: draw-check 400ms ease-out forwards;
}

@keyframes draw-check {
  to { stroke-dashoffset: 0; }
}

/* Success with scale */
.success-icon {
  animation: success 500ms cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

@keyframes success {
  0% { transform: scale(0); opacity: 0; }
  60% { transform: scale(1.2); opacity: 1; }
  100% { transform: scale(1); opacity: 1; }
}

/* Error shake */
.error-shake {
  animation: shake 400ms ease-in-out;
}

@keyframes shake {
  0%, 100% { transform: translateX(0); }
  20%, 60% { transform: translateX(-6px); }
  40%, 80% { transform: translateX(6px); }
}

/* Inline validation */
.field-valid {
  animation: valid-pop 200ms ease-out;
}

@keyframes valid-pop {
  0% { transform: scale(0.8); opacity: 0; }
  100% { transform: scale(1); opacity: 1; }
}

SVG Checkmark Pattern

<svg class="checkmark" viewBox="0 0 24 24">
  <circle cx="12" cy="12" r="10" fill="#10B981"/>
  <path
    class="check-path"
    d="M7 13l3 3 7-7"
    stroke="white"
    stroke-width="2"
    fill="none"
  />
</svg>

Auto-Dismiss Pattern

// Show success, auto-hide
element.classList.add('success-visible');

setTimeout(() => {
  element.classList.remove('success-visible');
  element.classList.add('success-hidden');
}, 3000);

Key Rules

1. Feedback must appear within 100ms of action 2. Success states: celebrate briefly, don't linger 3. Error states: persist until user acknowledges 4. Always provide text alongside icons for accessibility 5. prefers-reduced-motion: instant state, no animation

Related skills

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.