Vibary.ai
← Vibe Coding

Upload Complete Fold

A finished upload's progress track folds away as the tile turns over to its thumbnail.

feedbackfriendlypremiumautomatic · finite · intermediate · ~2.0s
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.

331 lines · react + motion only
import { useEffect, useState, type CSSProperties } from "react";
import { motion, useReducedMotion } from "motion/react";

/**
 * Vibary · Upload Complete Fold
 *
 * The moment an upload stops being a task and becomes a file: the
 * progress track folds away as the placeholder tile turns over to

About this pattern

The moment an upload stops being a task and becomes a file. The track fills on a linear curve, then folds out of the row in one short height tween while the placeholder tile turns over on its vertical axis to reveal the thumbnail behind it, and a small confirmation badge lands a beat later. The filename never moves and the status line crossfades in a fixed slot, so the row shrinks around the type rather than dragging it. Reduced motion keeps the reveal and drops the turn.

File uploaderAttachment in a composerMedia library importDocument intake queue

Where it shows up

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

  • Ridgeline
    Files
    Recent
    Shared
    Starred
    Trash
    FilesNew
    Brand refresh.figPriya Raman · 2.4 MB
    Q3 planning.pdfMarcus Bell · 840 KB
    Supplier contract.docxDana Whitfield · 96 KB
    Photography brief.mdNils Bergström · 12 KB
    Invoice 4821.pdfBilling · 64 KB
    File browser

    Upload tray row drops its progress track and shows the file thumbnail once the transfer lands.

Related patterns