A chooser for an orb's colors: every row shows its colorway as a planet, with a name and note, on a Base UI radio group so arrow keys move the choice. Lists the nine Orb Palettes by default; pair it with the Voice Orb to let people pick their assistant's color.
The source comes with full access.
One payment of $149 ($49 for now) opens the source right here and lets the CLI install every paid component, with lifetime updates.
pnpm dlx shadcn add @01orbital/orb-pickernpx shadcn add @01orbital/orb-pickeryarn shadcn add @01orbital/orb-pickerbunx --bun shadcn add @01orbital/orb-pickerPart of the 01orbital library. With a license, put ORBITAL_TOKEN in .env.local and the same command installs it (licensed install, pricing).
It lands at components/orbs/orb-picker.tsx, as source you own and edit.
The example also uses voice-orb. Install it too:
pnpm dlx shadcn add @01orbital/voice-orbnpx shadcn add @01orbital/voice-orbyarn shadcn add @01orbital/voice-orbbunx --bun shadcn add @01orbital/voice-orb"use client"
import * as React from "react"
import {
ORB_PALETTES,
type OrbPaletteName,
} from "@/components/orbs/orb-palettes"
import { OrbPicker } from "@/components/orbs/orb-picker"
import { VoiceOrb } from "@/components/orbs/voice-orb"
// The picker choosing the assistant's orb: pick a row, the Voice Orb takes
// that colorway.
export default function Demo() {
const [value, setValue] = React.useState<string>("planet-14")
const palette = (
value in ORB_PALETTES ? value : "planet-14"
) as OrbPaletteName
return (
// Stacked on a phone, side by side from sm, so the rows keep their width.
<div className="flex w-full max-w-2xl flex-col items-center gap-8 p-6 sm:flex-row sm:gap-10">
<VoiceOrb palette={palette} size={160} />
<div className="flex w-full min-w-0 flex-col gap-3 sm:flex-1">
<p className="font-display text-xl">Assistant color</p>
<OrbPicker
aria-label="Assistant color"
value={value}
onValueChange={setValue}
/>
</div>
</div>
)
}Prop
Type
It also accepts the props of the Base UI part it wraps, and the HTML attributes of the element it renders.
npm: @base-ui/react, cn. The CLI installs them for you.
Registry pieces it installs with it:
Orb Palettes
Nine named colorways for the orbs: scarlet over cobalt, ember, umber, tide, dusk, viridian with a gold seam, rose, gold and ash. Plain data; pass a name as palette to the Voice Orb, the Planet or the docked chat.
Orbital Orb Scene
A full-bleed backlit scene: a coral orb with a shadow-side crescent over a cream gradient, breathing blobs and grain. The orb follows the cursor with spring parallax via motion, stilled under reduced motion.