视觉与动效MatrixOrbCanvas状态机语音助手
点阵光球
一个由点阵构成的光球,可以在 idle、listening、thinking 三个状态之间动画切换,常用于语音助手入口。
待机
上面的组件正在页面上实时运行,可以直接交互。
安装
在项目根目录执行下面的命令,组件源码会写入 @/components/ui/matrix-orb.tsx。
npx shadcn@latest add swamimalode07/rare-ui/matrix-orb用法
组件默认导出(或具名导出)即可直接使用,不需要额外的 Provider。
matrix-orb.tsx
属性
下表列出了该组件公开的主要属性,所有未列出的原生属性都会透传到根元素。
| 属性 | 类型 | 默认值 | 说明 |
|---|---|---|---|
| state | "idle" | "listening" | "thinking" | "idle" | 当前状态,切换时自动过渡。 |
| level | number | — | 0–1 的强度,通常绑定音量。 |
| size | number | 160 | 画布尺寸(px)。 |
| color | string | — | 点阵颜色。 |
| dots | number | — | 点阵密度。 |
| labels | Partial<Record<MatrixOrbState, string>> | — | 自定义状态文案。 |