Components
- Accordion
- Alert
- Alert Dialog
- Autocomplete
- Avatar
- Badge
- Breadcrumb
- Button
- Card
- Checkbox
- Checkbox Group
- Collapsible
- Combobox
- Dialog
- Field
- Fieldset
- Form
- Frame
- Group
- Input
- Label
- Menu
- Meter
- Number Field
- Pagination
- Popover
- Preview Card
- Progress
- Radio Group
- Scroll Area
- Select
- Separator
- Sheet
- Slider
- Switch
- Table
- Tabs
- Textarea
- Toast
- Toggle
- Toggle Group
- Toolbar
- Tooltip
Resources
Meter
A graphical display of a numeric value within a range.
Storage usage75%
import {
Meter,
MeterIndicator,
MeterLabel,
MeterTrack,
MeterValue,
} from "@/components/ui/meter"
export function MeterDemo() {
return (
<Meter value={75}>
<div className="flex items-center justify-between gap-2">
<MeterLabel>Storage usage</MeterLabel>
<MeterValue />
</div>
<MeterTrack>
<MeterIndicator />
</MeterTrack>
</Meter>
)
}
Installation
pnpm dlx shadcn@latest add https://coss.com/ui/r/meter.json
Usage
import { Meter, MeterLabel, MeterValue } from "@/components/ui/meter"
<Meter value={40}>
<MeterLabel>Progress</MeterLabel>
<MeterValue />
</Meter>
Examples
Without Label and Value
import { Meter } from "@/components/ui/meter"
export function MeterSimpleDemo() {
return <Meter value={50} />
}
With Formatted Value
Rating3 / 5
"use client"
import {
Meter,
MeterIndicator,
MeterLabel,
MeterTrack,
MeterValue,
} from "@/components/ui/meter"
export function MeterWithFormattedValueDemo() {
return (
<Meter value={3} max={5}>
<div className="flex items-center justify-between gap-2">
<MeterLabel>Rating</MeterLabel>
<MeterValue>{(_formatted, value) => `${value} / 5`}</MeterValue>
</div>
<MeterTrack>
<MeterIndicator />
</MeterTrack>
</Meter>
)
}
With Range
Bandwidth (Mbps)700
"use client"
import {
Meter,
MeterIndicator,
MeterLabel,
MeterTrack,
MeterValue,
} from "@/components/ui/meter"
export function MeterWithRangeDemo() {
return (
<Meter value={700} min={500} max={1000}>
<div className="flex items-center justify-between gap-2">
<MeterLabel>Bandwidth (Mbps)</MeterLabel>
<MeterValue>{(_formatted, value) => value}</MeterValue>
</div>
<MeterTrack>
<MeterIndicator />
</MeterTrack>
</Meter>
)
}