All skills
dylantarre avatar

/medium-300-500ms

@747c656

Use when building standard animations between 300-500ms - page transitions, significant UI changes, animated illustrations that need clear communication

Use this Skill: https://skilld.dev/gh/dylantarre/animation-principles/medium-300-500ms

This session only. Nothing lands on disk.

SKILL.md

≈43 tokens always: the name and description. ≈675 when used: this file.

Medium Animations (300-500ms)

The 300-500ms range is standard animation territory. Long enough to be watched, short enough to not impede flow. The workhorse duration for meaningful motion.

Disney Principles at Medium Duration

All 12 Principles Applicable

Squash & Stretch: Full expression - visible deformation for bouncing, elastic elements. 15-25% stretch feels natural.

Anticipation: Clear preparation - 80-120ms anticipation before main action. Pull back before push forward.

Staging: Multi-element choreography possible - primary action leads, supporting elements follow.

Straight Ahead/Pose to Pose: Pose to pose recommended - define key positions, let easing handle in-betweens.

Follow Through: Essential - overlapping action where parts settle at different rates.

Slow In/Slow Out: Critical for naturalism - both directions need proper easing.

Arcs: Natural motion paths - elements should travel on curves matching real physics.

Secondary Action: Multiple secondary actions - hair follows head, shadow follows object.

Timing: 18-30 frames at 60fps. Enough frames for nuanced motion.

Exaggeration: Full range available - match to brand personality and context.

Solid Drawing: Complex transforms work - 3D rotations, perspective shifts.

Appeal: Character-defining animations - this is where brand personality lives.

Easing Recommendations

/* Smooth, natural motion */
transition: all 400ms cubic-bezier(0.4, 0, 0.2, 1);

/* Expressive entrance */
transition: all 450ms cubic-bezier(0.16, 1, 0.3, 1);

/* Bouncy, playful */
transition: transform 400ms cubic-bezier(0.34, 1.56, 0.64, 1);

/* Dramatic deceleration */
transition: all 350ms cubic-bezier(0, 0.55, 0.45, 1);

Best Use Cases

  • Page/view transitions
  • Complex modal sequences
  • Animated illustrations
  • Data visualization changes
  • Onboarding animations
  • Feature reveals
  • State machine transitions
  • Loading completion celebrations

Implementation Pattern

.page-enter {
  opacity: 0;
  transform: translateX(30px);
}

.page-enter-active {
  opacity: 1;
  transform: translateX(0);
  transition: opacity 350ms ease-out,
              transform 400ms cubic-bezier(0.16, 1, 0.3, 1);
}

/* Staggered children */
.list-item {
  transition: all 400ms cubic-bezier(0.4, 0, 0.2, 1);
}
.list-item:nth-child(1) { transition-delay: 0ms; }
.list-item:nth-child(2) { transition-delay: 50ms; }
.list-item:nth-child(3) { transition-delay: 100ms; }

Key Insight

Medium duration is where animation becomes storytelling. Users watch, understand, and remember these animations. Invest in polish here - it defines perceived quality.

Source: SKILL.md on GitHub

1 warning15d5 checks · Risk SAFE
  • Gen Agent Trust Hub15d

    The skill content is a legitimate educational resource focused on UI animation principles and CSS implementation. No security threats or malicious patterns were detected.

  • Socket15d

    No alerts

  • Snyk15d

    Risk: LOW · No issues

  • Runlayer7mo

    1/1 file flagged

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at 747c656. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub 2 months ago.

Dormantupdated 9 months ago

README badge

README badge for dylantarre/animation-principles/medium-300-500ms