Orbit Gallery
ComponentsOrbit Gallery
ExperimentsNew

Orbit Gallery

Put your work into orbit. Spin a dimensional wheel of posters, projects, or ideas.

React + CSS
Live component. Go ahead, interact.
01

Installation

Run this in your shadcn-configured React project. The component and stylesheet are added together.

TERMINAL
npx shadcn@latest add http://localhost:5173/r/orbit-gallery.json

This command uses the current site address. For localhost, keep this preview running on the same computer. Files follow your configured components alias.

02

Usage

Import the component and make the details your own.

TypeScript
import { OrbitGallery } from '@/components/anticraft/OrbitGallery';

export function Example() {
  return (
    <OrbitGallery
      defaultValue="solar"
      items={[
        { id: 'solar', title: 'Solar Studies', subtitle: 'Art direction / 2026', color: '#e98055', content: <span style={{ fontSize: 100 }}>☀</span> },
        { id: 'parallel', title: 'Parallel Play', subtitle: 'Visual identity / 2025', color: '#c8dca4', content: <span style={{ fontSize: 100 }}>✳</span> },
        { id: 'blue', title: 'Blue Hour', subtitle: 'Printed matter / 2025', color: '#b9c9ee', content: <span style={{ fontSize: 100 }}>◒</span> },
      ]}
    />
  );
}
03

Props

PropTypeDefaultDescription
itemsOrbitGalleryItem[]RequiredItems with unique id, title, decorative ReactNode content, and optional subtitle, CSS color, and href.
defaultValuestringFirst itemThe id of the item initially placed at the front.
onValueChange(id: string) => voidundefinedCalled when the selected item changes.
classNamestring''Additional classes. Set --ac-orbit-height to size the gallery.
04

Motion & accessibility

Considered by default.

Drag horizontally to spin the wheel. Previous and next controls, arrow keys, Home, and End provide direct navigation. Touch gestures preserve vertical page scrolling. Only the selected item is exposed as the current project; an optional href becomes a separate link. Nothing plays automatically. Reduced motion switches selection without animated rotation.

Use semantic content and meaningful labels in your composition. Check contrast and keyboard behavior with your own styles and content.