Skip to content

Dial Gauge

One dial, four faces. Notched: fine notches round the rim over a numbered inner ruler, brightening as the sweep passes them with a short glow just behind the needle.

$149 once · every Pro piece

Customize

Conic: no track, a conic wedge that brightens toward the value inside a thin progress ring, with a raised centre disc holding the number. Speedometer: heavier notches and an outside scale, with a red zone past the redline whose notches glow in the accent once lit, and rings of dots lighting behind. Dots: seven rings of dots lighting to the score and fading toward the centre. Needles come as a line, a tapered gradient, a triangle or a diamond; the line and tapered ones turn on a raised cap with a short tapered counterweight. The needle rides a spring with no bounce and re-sweeps from wherever it is when a new sample lands; the value rolls. The accent appears only past the redline. Point at the dial, or Tab in and use the arrow keys, to probe the scale: a small mark rides the rim, the centre number rolls to the probed value and the caption gives its distance from the reading.

Install

npx shadcn@latest add @obsyde/dial-gauge

Needs your licence key · Get Pro

Usage

Import it from where the CLI puts it, or copy the files below by hand.

import { DialGauge } from '@/components/obsyde/ember/dial-gauge/DialGauge';

export function Example() {
  return (
    <DialGauge variant="notched" needle="line" value={53} />
  );
}

Files

What you get with Pro: plain React, TypeScript and CSS, with no dependencies.

  • ember/dial-gauge/DialGauge.tsxcomponent
  • ember/dial-gauge/dial-gauge.cssstyles
  • ember/dial-gauge/DialGaugeDemo.tsxdemo
  • ember/viz-kit/viz-kit.cssshared
  • ember/viz-kit/state-messages.tsxshared
  • ember/viz-kit/size.tsshared
  • ember/viz-kit/shape.tsshared
  • ember/viz-kit/scale.tsshared
  • ember/viz-kit/roll.tsshared
  • ember/shared/rolling-number.cssshared
  • ember/shared/spring.tsshared
  • ember/shared/accent.tsshared
  • ember/viz-kit/radial.tsxshared
  • ember/viz-kit/radial.cssshared
  • ember/shared/ember.cssshared
  • ember/viz-kit/touch.tsshared
  • ember/viz-kit/motion.tsshared
  • ember/viz-kit/focus.tsshared
  • ember/viz-kit/keyboard.tsshared
  • ember/viz-kit/demo.tsxshared
  • ember/viz-kit/demo.cssshared

API

PropTypeDefault
accentAccent'ember' | 'volt' | 'arc''ember'
variantVariant'notched' | 'conic' | 'speedometer' | 'dots''notched'
needleNeedle'line' | 'tapered' | 'triangle' | 'diamond' | 'none''line'
valueValue %number62
redlineRedline %number80
liveLivebooleanfalse
sizeSizenumber320
statusStatus'ready' | 'loading' | 'empty''ready'