E-Commerce
Product Grid Filter Bar
Sticky filter/sort bar with active filter chips, result count, and sort select that wraps a product grid via children.
$ velocityx add product-grid-filter-bar
Built for react.
Needs react, react-dom already installed
as peer dependencies.
An Astro-only project needs @astrojs/react wired up first — this won't run on its own in plain Astro.
Full docs for Product Grid Filter Bar →
Needs a licence key —
subscribe here, then
velocityx loginonce.
Props
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| resultCount | number | No | 0 | |
| sort | { value, options: {value,label}[], onChange(value) } | Yes | ||
| filters | { id, label }[] | No | [] | active filter chips |
| onRemoveFilter | (id) => void | Yes | ||
| onClearAll | () => void | Yes | ||
| onOpenFilters | () => void | Yes | open your own side-panel filter UI | |
| children | ReactNode | Yes | the product grid itself |
File this creates
The CLI writes this path into your project, relative to its root — nothing else moves.
components/velocity/product-grid-filter-bar/ProductGridFilterBar.jsx Using the Product Grid Filter Bar component
Install it with velocityx add product-grid-filter-bar.
The CLI writes the source straight into your project — no runtime dependency, no registry
lock-in, and it themes itself from the same primary-*/accent-* scale as the rest of the library.
Related components
More from E-Commerce.
Primary CTA with loading, success checkmark and error states around an async add-to-cart handler.
reactRight-docked cart drawer on desktop and a three-snap-point bottom sheet on mobile, with no backdrop-blur scrim, focus trap and Escape to close.
reactSingle cart row with thumbnail, variant text, quantity stepper, line total and a fade-out remove action.
reactTwo-column shipping and payment form with native HTML5 validation and a submit button with a loading state.
react