Beam
Hairline curves drawn between nodes, measured from the elements themselves and re-measured when anything resizes.
$149 once · every Pro piece
Customize
fan-in
chain
interval
manual
A pulse runs along a curve with a white head and a tail that fades back through the accent to nothing, on an interval or when fired, and the node it lands on warms for a moment. In a chain an arriving pulse carries on to the next node.
Install
npx shadcn@latest add @obsyde/beamNeeds your licence key · Get Pro
Usage
Import it from where the CLI puts it, or copy the files below by hand.
import { BeamNode } from '@/components/obsyde/ember/beam/Beam';
export function Example() {
return (
<BeamNode />
);
}
Files
What you get with Pro: plain React, TypeScript and CSS, with no dependencies.
ember/beam/Beam.tsxcomponentember/beam/beam-demo.cssstylesember/beam/beam.cssstylesember/beam/BeamDemo.tsxdemoember/effects-kit/kit.tssharedember/shared/accent.tssharedember/shared/spring.tssharedember/shared/ember.cssshared
API
| Prop | Type | Default |
|---|---|---|
accentAccent | 'ember' | 'volt' | 'arc' | 'ember' |
layoutLayout | 'fan-in' | 'chain' | 'fan-in' |
triggerTrigger | 'interval' | 'manual' | 'interval' |
intervalInterval (ms) | number | 1400 |
durationTravel (ms) | number | 1100 |
tailTail (px) | number | 90 |
curvatureBow (px) | number | 0 |