Notifications Toasts

dylantarre/animation-principles/skills/07-by-ui-element/notifications-toasts

by dylantarre83597134ba8fNo license99 starsListed Oct 8, 2026Updated Oct 8, 2026Repository updated 9 months ago

Use when animating notifications, toasts, alerts, snackbars, or system messages to grab attention appropriately

Instructions onlyDesign & Creative
AI-generated overview

Applies Disney's 12 animation principles to notification and toast animations, with CSS examples.

What it does
This skill provides guidance for animating notifications, toasts, alerts, snackbars and system messages so they attract attention without disrupting users. It maps each of Disney's 12 animation principles to notification behavior, covering entrance, attention and exit states. It also supplies CSS snippets for toast enter and exit keyframes and a progress bar, plus recommended timing values and key properties.
When to use it
Use it when designing or implementing animated notifications, toasts, alerts, snackbars or system messages. It fits work where entrance, dismissal and attention-drawing motion need to feel polished rather than jarring.
Requirements
No scripts or special tooling; the skill is instructions and CSS examples only. Applying the CSS assumes a web front-end environment.

Notification & Toast Animation Principles

Apply Disney's 12 principles to notifications for attention-grabbing yet non-disruptive alerts.

Principles Applied to Notifications

1. Squash & Stretch

Toast can compress slightly on entrance impact, then stretch back. Creates a "landing" feel as if it arrived from off-screen.

2. Anticipation

Before auto-dismiss, toast can contract slightly (95% scale) for 100ms. Signals imminent departure to user.

3. Staging

Notifications should appear in consistent locations. Use color and icons to stage importance: info, success, warning, error.

4. Straight Ahead & Pose to Pose

Define states: entering, visible, exiting, stacked. Clear keyframes for entrance, attention (if needed), and exit.

5. Follow Through & Overlapping Action

Icon animates after container arrives (checkmark draws, bell wobbles). Progress bar for auto-dismiss follows toast entrance.

6. Ease In & Ease Out

Enter: ease-out (fast in, slow settle). Exit: ease-in (slow start, fast out). cubic-bezier(0.68, -0.55, 0.27, 1.55) for bounce.

7. Arcs

Toasts sliding from corners can follow slight arc. Bell icons should swing in arc, not rotate rigidly.

8. Secondary Action

While toast slides in (primary), shadow appears (secondary), icon animates (tertiary), progress bar starts (quaternary).

9. Timing

  • Toast enter: 200-300ms
  • Toast exit: 150-250ms
  • Auto-dismiss delay: 3000-5000ms
  • Attention pulse: 1000ms loop
  • Success checkmark draw: 300ms
  • Stack reorder: 200ms

10. Exaggeration

Error notifications can shake or pulse red. Critical alerts can be larger, bolder animations. Match urgency to importance.

11. Solid Drawing

Maintain consistent toast sizing. Icons should be crisp. Progress bars should be smooth (use transforms, not width).

12. Appeal

Smooth notifications feel polished. Jarring popups annoy users. A well-animated toast conveys professionalism.

CSS Implementation

css
.toast {  animation: toastEnter 300ms cubic-bezier(0.68, -0.55, 0.27, 1.55);}
.toast.exiting {  animation: toastExit 200ms ease-in forwards;}
@keyframes toastEnter {  from {    opacity: 0;    transform: translateY(-100%) scale(0.9);  }  to {    opacity: 1;    transform: translateY(0) scale(1);  }}
@keyframes toastExit {  to {    opacity: 0;    transform: translateX(100%);  }}
.toast-progress {  transform-origin: left;  animation: progress 4000ms linear forwards;}

Key Properties

  • transform: translate, scale
  • opacity: fade
  • animation: entrance/exit sequences
  • transform-origin: progress bars
  • box-shadow: depth

Source and attribution

Source:dylantarre/animation-principlesinskills/07-by-ui-element/notifications-toastsat commit8359713

License: No license

Content belongs to its original authors. SourceWeft indexes it from a public repository.

Report or request removal