Documentation
Pro

Components & page composition

Use the live catalog to inspect a pattern, then keep its CSS, controller and surrounding markup together.

Inspect before copying

Open the component catalog. Search a pattern, expand its source and copy or download the literal markup. The catalog demonstrates populated, empty, validation and disabled states. Its fragments are not standalone commerce applications.

A product card

This snippet comes from the packaged example. The asset path is relative to a storefront page.

<article class="product-card">
  <div class="card-image">
    <a href="product.html?id=canvas">
      <img src="assets/img/sneaker.webp" width="1254" height="1254"
           alt="The Everyday Canvas in Midnight / Ecru" loading="lazy">
    </a>
    <button type="button" data-add="canvas"
            aria-label="Choose options for The Everyday Canvas">+</button>
  </div>
  <div class="card-info">
    <div>
      <h3><a href="product.html?id=canvas">The Everyday Canvas</a></h3>
      <p>Midnight / Ecru</p>
    </div>
    <span>€68</span>
  </div>
</article>

Keep the dependencies

Product cards / quick-add
assets/css/base.css, assets/css/home.css, assets/css/identity.css and assets/css/responsive.css; assets/js/catalog-data.js before store.js. Quick-add also needs the quick-view and bag dialogs and cart status element.
Wishlist
assets/js/wishlist.js, assets/css/wishlist.css and the shared header dropdown markup.
Comparison
assets/js/compare.js, its styles, shared store controls and compare.html.
Forms and catalog specimens
assets/js/components.js initializes the full catalog. Extract a matching controller for an isolated specimen; do not load the entire controller on an unrelated page.

Compose safely

Native details/summary works without a custom controller. Calculated totals and custom state changes do not. Keep labels, error messages and visible focus. Avoid duplicate IDs when pasting forms; update the controller selectors if you rename them.

Use the product preview and shopping behavior reference to check the result.