# Confidence Meter

> A five-block confidence threshold meter backed by native radio inputs — click a block or drag across the meter to snap the threshold, watch the brand gradient update while a quiet crossfading readout follows — themed by the AI Steppers design system in both light and dark.

- Category: Input
- Frameworks: Vanilla, React + CSS, React + Tailwind
- Design system: Triangulum
- Dark mode: yes
- Access: premium (Atheros AI Pass)
- Tags: slider
- Page: https://builder.atheros.ai/components/confidence-meter
- Preview: https://d17nmjscumqk5d.cloudfront.net/builder/templates/tpl_builder_confidence_meter/preview-77f70089eee1.webp

## Features

- Bare centered meter with a small on-brand title group — no panel card or button chrome
- Five meter blocks are `<label>` elements bound to visually-hidden native radio inputs (0.2–1.0)
- Checked blocks fill with the semantic confidence ramp — red (permissive) through amber to the design system's success colour (strict)
- Quiet digit readout — stacked digits use a brief opacity crossfade with no spatial movement
- Digit color matches the gradient stop of the highest lit block
- Drag anywhere across the meter to select the block under the pointer; touch drag supported
- Block fills sweep the colour ramp with a smooth 0.35s eased transition (no stagger, no spatial motion); scrubbing switches to immediate 1:1 tracking via an `is-scrubbing` class
- Hover and press feedback use color and an inset outline instead of movement
- Permissive → Strict hint labels anchor the scale ends
- Native radio keyboard semantics — arrow keys move the threshold, group is focusable
- Focus-visible ring outlines the whole meter when radios are keyboard-focused
- Dark and light themes flip the gradient (pink→blue light, violet→teal dark)
- Responsive layout that adapts down to 320px
- Fully respects `prefers-reduced-motion`

## Accessibility

- **Radio group semantics** — `role="radiogroup"` with an `aria-label` wraps five native radio inputs
- **Option labels** — Every radio carries an explicit `aria-label` ("0.6 — Medium") announcing value and meaning
- **Keyboard navigation** — Native radio arrow-key behavior moves the threshold in both directions
- **Focus indicators** — `:focus-visible` outlines the whole meter when a radio is keyboard-focused, plus the global ring
- **Redundant visuals hidden** — Digit readout and hint row are `aria-hidden` — the value is announced by the radio labels
- **Hidden inputs stay focusable** — Radios use the sr-only clip pattern, not `display: none`, so they keep focus and key events
- **Reduced motion** — `prefers-reduced-motion: reduce` collapses all transitions

## Keyboard shortcuts

- `ArrowRight / ArrowDown` — Move the threshold one step stricter
- `ArrowLeft / ArrowUp` — Move the threshold one step more permissive
- `Tab` — Move focus to the radio group

## Common questions

**Which frameworks is Confidence Meter available in?**

Confidence Meter ships as Vanilla, React + CSS and React + Tailwind — HTML, CSS, JS and React source you can copy, download or clone into Atheros AI Builder.

**Is the Confidence Meter input component free?**

Confidence Meter is a premium component. Anyone can preview it; the source, downloads and AI customisation are included with Atheros AI Pass.

**Does Confidence Meter support dark mode?**

Yes. Confidence Meter ships light and dark themes, both drawn from the Triangulum design system's tokens. Switch the preview to dark mode to compare them.

## Get the code

Preview Confidence Meter live, then sign in to copy or download the source, apply another design system, or ask the AI assistant to change it: https://builder.atheros.ai/components/confidence-meter

Every component on https://builder.atheros.ai is also reachable from Claude Code, Cursor and Codex through the Atheros MCP server (paid plans). Component index: https://builder.atheros.ai/llms-components.txt
