Storefront facet filter

Shopify-style dropdown filter bar for a storefront. One dropdown per filterable product field (Color, Size, Material — whatever your catalog has) plus a Price range dropdown. Each value shows a live count that updates as other filters change, and values with no matching products are hidden. Facets come from your site's products collection, which is created when you sync Stripe products or import from Shopify.

commerceconnectorstripestorefrontfilterfacetsdropdownshopify-style

About this block

A row of dropdown filters for a store page, like the ones on Shopify shops. Shoppers pick colours, sizes or other options and a price range, and your product grid updates to match. The dropdowns build themselves from your products, so you don't set up each filter by hand.

When to use it

  • A shop page with enough products that people need to narrow them down.
  • Catalogs with options like colour, size or material.
  • Above a storefront product grid, so filters and results sit together.
  • Category pages where shoppers want to set a budget.

What's inside

  • One dropdown for each filterable field in your products, such as Color or Size. Each one opens a list of checkboxes with a count next to every value, like Red (12).
  • Counts update as other filters change, and values with no matching products are hidden.
  • A Price dropdown with Min and Max number fields.
  • A count of matching products at the end of the row.
  • Choices are saved in the page address, so a filtered page can be shared or bookmarked.

How to customize it

  • Sync your Stripe products or import from Shopify. That creates the products collection the filters read from.
  • Place a storefront product grid section below the filters. It picks up the filter choices and shows the matching count.
  • Limit which dropdowns appear by listing the fields you want in the filter's data settings, for example colors and sizes.
  • Change the "Filter:" label or the button style to match your shop.

Questions

Where do the filter options come from?
From your site's products collection. Any field set up as a choice list or marked filterable becomes a dropdown, with one checkbox per value.
Does the page reload when a shopper picks a filter?
No. Ticking a box updates the product grid straight away, and the price fields update it a moment after the shopper stops typing.
Can shoppers pick more than one value?
Yes. Within one dropdown, ticking several values shows products that match any of them, and choices across different dropdowns narrow the results together.

Browse other blocks

Same library cards — preview live and grab the code from any block.

View full library

Shopping cart drawer

Pre-styled slide-out shopping cart with header, item list, checkout button, and continue shopping link. Drop onto any page to enable cart functionality.

Live product grid (Stripe)

Data-bound product card grid that repeats for each Stripe product. Connect Stripe to populate automatically.

Product scroll strip (Stripe)

Compact horizontal scrolling product strip with small cards. Great for related products or upsells.

Storefront search bar

Search input that filters the product list on the same page. Updates ?q= in the URL so results are shareable and SSR-rendered.

Storefront product detail

Full product detail page: image gallery on the left (up to 4 thumbnails that swap the main photo), and title, price, description, option chips for each variant (like size or color), a quantity field, Add to Cart and Buy Now on the right. Bound to the singular 'product' Stripe collection, resolved by slug from the URL.

Storefront category nav

Horizontal category chips pulled live from Stripe products (metadata.category). Clicking a chip filters the product grid via ?category=.

Featured product spotlight (Stripe)

Data-bound hero showcasing a single featured product with large image, title, description, price, and buy button.

Storefront filter sidebar

Compact filter row with price range inputs and a sort dropdown. Writes ?minPrice, ?maxPrice, ?sort to the URL — SSR + client refetch handle the rest.

Storefront pagination

Prev / Next navigation for paged product lists. Reads ?page= and writes the next/prev value on click.

Customer account (sign-in, profile and orders)

One account page for a shop: signed-out visitors get the email sign-in form; signed-in customers see their name, order count, total spent, order history with tracking links, and a sign-out button.

Mini cart bar

Fixed bottom bar showing cart item count, subtotal, and a checkout button. Hidden until the cart has at least one item. A compact alternative to the full cart drawer for simpler stores.

Storefront promo code

Promo / coupon code input. Shoppers type a Stripe Promotion Code here; the code rides the next cart-checkout request and Stripe applies the discount on the hosted checkout page. Invalid codes surface a cart error; valid codes show a 'will be applied at checkout' note.