Skip to content

Living Bento Grid

A dark bento feature grid that is a live system: tiles update on their own, catch a pointer light, reorder by drag or keyboard, and grow into a detail panel.

DOM + CSS0 deps1 file · 25 KB TSXreduced-motion aware

ProBento Boxminimal
Preview

Props

Live data

The source is part of Pro

$27/month or $179 once. See Pro

No runtime dependencies
"use client";

import { useEffect, useId, useLayoutEffect, useRef, useState } from "react";
import type { CSSProperties, KeyboardEvent as ReactKeyboardEvent, PointerEvent as ReactPointerEvent, ReactNode } from "react";

/**
 * LivingBentoGrid — a bento feature grid that is a live system, not a
 * screenshot of one.
 *
 * - LIVE. Each tile renders from a `tick` that advances on a slow interval,
 *   so figures, sparklines and status lists move on their own while the
 *   section is on screen. It pauses off-screen, in hidden tabs, during a drag
 *   and under prefers-reduced-motion. Only content moves; the grid, the
 *   canvas and the hairlines never do.
 * - LIT. One light follows the pointer across the grid and catches every
 *   tile's hairline near it. Hover never lifts a tile.
 * - REORDERABLE. Drag a tile and the others slide out of its way (FLIP,
 *   a short spring), measured in layout pixels so it works inside scaled

  // ---------------------------------------------------------------
  // Full source available with a viberdy Pro subscription.
  // https://viberdy.dev/pricing
  // ---------------------------------------------------------------
}
Details

About this section

Most bento sections are a screenshot of a product arranged in rounded boxes, and they sit still. The best ones feel like the product is running inside them. Here each tile renders from a clock that advances every few seconds while the section is on screen, so request rates, latency heat strips, deploy lists and usage meters move on their own, and only the content moves; the grid, the canvas and the hairlines never do. One light follows the pointer and catches the hairline of every tile near it, and hover never lifts a tile. Drag a tile and the others slide out of its way with a short spring, or focus it and press Alt with an arrow key for the same move, announced to screen readers. Click a tile and it grows from its own rectangle into a panel with a fuller view; Escape shrinks it back. The tile widgets ship with it: BigFigure, Sparkline, HeatStrip, StatusList and Meter.

Curator’s note

Part of the Bento Box kit, drop 2, phase 4: the kit's flagship. Pro because it is a stateful multi-part system: a live clock, FLIP reordering by pointer and keyboard, and a shared-element expand.

Pairs well with

Trending
Pro
Pro