Vibary.ai
← Vibe Coding

Medal Ribbon Pin

A pin bar settles across the ribbon top, two straps draw down to the medal, and the disc lands on one soft spring while its star fades in.

achievementpremiumcalmautomatic · finite · starter · ~2.6s
Variant

The animated component in this preview is rendered from the canonical file shown here. The surrounding demo shell only provides context and is not part of the copied code.

277 lines · react + motion only
import { motion, useReducedMotion } from "motion/react";

/**
 * Vibary · Medal Ribbon Pin
 *
 * A medal earned, pinned in place. A pin bar settles across the top of
 * the ribbon, two straps draw down to the medal, and the disc lands
 * once on a single soft spring while its star fades in. The copy fades

About this pattern

A medal should feel pinned, not thrown. This belongs on the achievements list when a new medal is earned, the profile header after a milestone, and the leaderboard row when a season closes. The pin bar only fades, because a fastener should not perform; the two straps draw down as pathLength tweens, which is how the ribbon earns its length rather than appearing all at once; the disc lands on one critically damped spring, the only settle in the file, because an award should arrive rather than bounce; the star only fades in after the disc is still, and the copy only fades after that, because words that move read as unfinished work. Under reduced motion the beats keep their order and lose their travel.

Achievements list when a new medal is earnedProfile header after a milestoneLeaderboard row when a season closesAward detail after a record is set

Where it shows up

Screens we drew to show where this motion usually sits. Illustrations, not captures of any product.

  • 10:15
    Achievements
    First orderUnlocked today
    Five-day streakUnlocked Tue
    Early riserUnlocked last week
    Full monthLocked
    HomeSearchActivityProfile
    Achievements

    The new medal pins to the top row of the achievements list.

  • 10:15
    Priya RamanTrail running · Gothenburg
    214Posts1,842Followers306Following
    Follow
    Priya Raman2hFinally got the trail loop under an hour. Four months of Tuesdays.
    12814
    Profile page

    The medal pins beside the avatar in the profile header.

Related patterns