Vibary.ai
← Vibe Coding

Bookmark Save

The mark fills from the notch up, tucks into its corner, and a ribbon slides down behind the card edge.

socialsubtlepremiuminteraction · finite · starter · ~0.4s
Interactive · click to play
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.

312 lines · react + motion only
import { useState } from "react";
import { AnimatePresence, motion, useReducedMotion } from "motion/react";

/**
 * Vibary · Bookmark Save
 *
 * The save that reads as filing something away: the mark fills from the
 * notch up, settles a couple of pixels deeper into its corner, and a

About this pattern

Saving something is a filing action, not a celebration, so the motion is about the item ending up somewhere rather than about the tap being applauded. The fill climbs the mark from the notch upward behind a bottom-anchored clip — the glyph is laid out at full size from the first frame and simply uncovered, so no path is ever redrawn or scaled — then the mark settles two pixels deeper, as if it had been pressed into the corner it lives in. A ribbon pulled down from above the card's top edge does the work the icon can't: it is visible from across a long list, which is where saved items are actually recognised. Unsaving reverses every step at the same speed, because a save you can't confidently undo is a save people stop making.

Save an articleReading listBookmark a listingFile a post into a collection

Where it shows up

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

  • 10:15
    Priya Raman2hFinally got the trail loop under an hour. Four months of Tuesdays.
    12814
    Marcus Bell5hNew supplier signed. Same rate, twelve more months.
    423
    Social feed

    The save mark under a post fills on tap and offers the collection the post landed in.

Related patterns