Color Swatch Filter

Multi-select color circles for color filtering. Each option paints its own CSS color and stays accessible via screen-reader labels.

Color

Requires shadcn/ui initialized. Run npx shadcn@latest init if you haven't.

Import & use
import { FilterSwatch } from "@/components/beste/component/filter-swatch";

<FilterSwatch
  label="Color"
  defaultValue={["black"]}
  onChange={(value) => console.log("selected:", value)}
  options={[
    { label: "Black", value: "black", swatch: "#18181b" },
    { label: "Blue", value: "blue", swatch: "#2563eb" },
  ]}
/>

More Filter components

View all Filter

Size

Multiselect Filter

filter-multiselect

Dropdown with checkbox rows and a selection-count badge. Keeps many-option filters compact in toolbars where a checkbox list would not fit.

Category

24
18
9
12

Checkbox Filter

filter-checkbox

Multi-select checkbox list with optional result counts. Works controlled or uncontrolled, designed for filter sidebars and toolbars.

Category

Select Filter

filter-select

Single-select dropdown for long option lists that would crowd a sidebar. Supports a clear item, result counts, and a disabled state for dependent filters.

Gender

Segmented Filter

filter-segmented

Single-select segmented control built on Tabs for mutually exclusive choices like gender or condition. Clicking the active segment clears the selection.

Size

Chips Filter

filter-chips

Multi-select button chips for compact option sets like sizes. Works controlled or uncontrolled.

Brand

Combobox Filter

filter-combobox

Searchable dropdown for very long option lists like brands. Type to narrow options, select one or many, and see result counts inline.