Back to components

Product

Product Grid

A responsive grid of product cards with built-in loading skeletons and a customizable empty state.

grid
responsive
loading

Preview

Aurora lamp
new

Aurora Lamp

$129.00$179.00-28%
Halo chair

Halo Chair

$249.00

Installation

Run the shadcn CLI. Dependencies and the shared lib block come with it.

npx shadcn add product-grid

Usage

Import
import { ProductGrid } from "@/components/lumo/product-grid"
Example
<ProductGrid
  products={products}
  columns={3}
  onAddToCart={(product, variant) => addLine(product, variant)}
/>

Props

PropTypeDefaultRequired
productsProduct[]-
Required
loadingboolean-
loadingCountnumber-
columns2 | 3 | 44
emptyStateReactNode-
onAddToCart(product, variant) => void-
isInWishlist(product) => boolean-
localestring-

All props accept standard HTML attributes unless otherwise specified.

Dependencies

Lumo blocks

Own every line

Lumo blocks copy into your repo. No runtime dependency, no lock-in. Edit the code to fit your product.