ecommerce pattern

Product list

Storefront catalog — grid of products with filters and sort.

When to use it

User browses a category. Default landing for /shop / /category/X.

  • Time-to-product-detail <5s
  • Filters reduce by ≥1 dim in <10s
  • No layout shift on filter change

Layout regions

  • header
  • filters
  • main
  • toolbar
  • grid
  • pagination

States

  • default
  • loading
  • empty
  • partial

Example

<Container variant="xl"><Grid variant="asymmetric" cols="240px 1fr"><FilterSidebar /><Stack><Toolbar /><Grid variant="auto" min="240px">{products.map((p) => <ProductCard key={p.id} {...p} />)}</Grid><Pagination /></Stack></Grid></Container>

The full Product list pattern specifies 3 exact microcopy strings, 2 motion specs, 5 composition rules — all gated behind the full recipe. Get the full recipe.

Build the Product list pattern in your project.