ComponentsBackgrounds & effects
Raked Sand
A raked gravel garden whose grooves bend into rings around the stones standing in it; drag to rake new furrows.
"use client";
import { Clock, CupSoda } from "lucide-react";
import { RakedSand } from "@/components/miyuki-ui/raked-sand";
const STONE =
"absolute flex items-center justify-center gap-2 rounded-full border border-border text-sm font-medium text-foreground shadow-md bg-[radial-gradient(90%_120%_at_32%_22%,var(--card)_35%,color-mix(in_oklab,var(--muted)_60%,color-mix(in_oklab,var(--brand)_8%,var(--card))))] dark:bg-[radial-gradient(90%_120%_at_32%_22%,var(--accent),var(--card))]";
export default function RakedSandDemo() {
return (
<RakedSand className="size-full">
<div data-stone className={`${STONE} top-[18%] left-[8%] h-24 w-40 sm:left-[17%] sm:h-28 sm:w-48`}>
<CupSoda className="size-4 text-muted-foreground" aria-hidden="true" />
Tea, 15:00
</div>
<div data-stone className={`${STONE} right-[6%] bottom-[16%] h-20 w-52 sm:right-[15%] sm:h-24 sm:w-60`}>
<Clock className="size-4 text-muted-foreground" aria-hidden="true" />
Garden closes 17:00
</div>
</RakedSand>
);
}Install
npx shadcn@latest add @miyuki-ui/raked-sandThis needs the @miyuki-ui registry in your components.json. See Using the shadcn CLI.
Props
RakedSand
Prop
Type
Rain on Glass
Rain on a misted window: drops gather, run and merge, leave trails of beads that slowly dry, and each one holds a small upside-down view of the world behind the glass.
Reading Stream
A line down the side of an article that fills with water as you read, with a droplet at its end and a ring for each section.