Vibary.ai
← Vibe Coding

Open Week

A week with nothing on it: the days arrive, today gets its ring, and a small sun lifts once and holds.

empty-statescalmfriendlyautomatic · finite · starter · ~1.4s
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.

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

/**
 * Vibary · Open Week
 *
 * An empty calendar, rendered as a week with nothing on it. Seven day
 * dots arrive left to right, a ring draws around today, and a small sun
 * lifts above the row and settles once — the visual equivalent of

About this pattern

The difference between an empty calendar and a broken one is whether the emptiness is deliberate. Seven day dots arrive left to right with a tight stagger, a hairline ring draws around today, and a small amber sun lifts above the row on a single overdamped spring — then everything stops. No pulsing dot, no shimmer, nothing that could be mistaken for content still loading. This is the state a person sees when there is genuinely nothing scheduled, and it should feel like open time rather than a missing page. Reduced motion keeps the arrival order and drops the travel.

Calendar week with no eventsUpcoming list clearedSchedule widget with nothing bookedOnboarding before first event

Where it shows up

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

  • 10:15
    Today
    You are all caught up
    HomeSearchActivityProfile
    Activity summary

    An emptied upcoming list resolves into the week strip, the ringed today, and the sun holding still.

  • OverviewLast 30 days
    Revenue$48,210+12.4%
    Orders1,284+3.1%
    Refunds$1,940−0.8%
    Revenue by day
    No sessions in this range
    Dashboard

    A schedule widget with nothing booked settles into the same still mark under the widget header.

Related patterns