npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@coveo/ui-kit-sample-atomic-commerce-react

v3.11.41

Published

Readme

Atomic Commerce Sample (React)

Scaffold template: atomic-commerce-react A multi-page commerce experience built with @coveo/atomic-react — the React wrapper for Coveo's Atomic components — bundled with Vite. It runs against the public barca sample commerce organization with no configuration required.

What it shows

Four page types, mirroring the Headless commerce samples, wired with a tiny client-side router (src/App.tsx) and pill-tab navigation:

  • Home (/) — product recommendations plus a standalone search box that redirects to the search page on submit.
  • Search (/search) — AtomicCommerceInterface type="search": search box with query suggestions + instant products, facets, sort, a product grid, and a pager.
  • Product listings (/listing/surf-accessories, /listing/toys) — AtomicCommerceInterface type="product-listing" bound to a catalog view URL, each with its own standalone search box, facets, sort, grid, and pager.

Every non-search page has a search box (redirectionUrl="/search") so a query always takes the shopper to the search page.

Technology stack

  • @coveo/atomic-react/commerce: React components wrapping @coveo/atomic
  • @coveo/headless/commerce: builds the commerce engine
  • Vite + React: dev server and build
  • Playwright: end-to-end tests

Getting started

pnpm install
pnpm dev      # start the dev server (opens the home page)
pnpm build    # production build
pnpm preview  # preview the production build (http://localhost:4173)
pnpm e2e      # end-to-end tests (Playwright)

How it works

  • src/engine.ts builds a commerce engine from getSampleCommerceEngineConfiguration() bound to a page's catalog view.url.
  • Each page (src/pages/*) renders an AtomicCommerceInterface (or AtomicCommerceRecommendationInterface) fed that engine.
  • src/App.tsx is a minimal history-based router with pill-tab navigation.
  • vite.config.js copies Atomic's runtime assets, lang, and themes out of the installed packages into public/; the theme is linked in index.html.

Using this sample as an MRE

  • Where to change the configuration: src/engine.ts (public barca sample credentials). Replace it with your own organizationId/accessToken and set each page's catalog URL.
  • Safe to modify: src/engine.ts and the page components under src/pages.
  • Scaffolding you can usually ignore: vite.config.js, playwright.config.ts, and e2e/.
  • Credentials: the sample configuration targets the public barca sample commerce organization, safe to share with customers or partners.

Reproducing against a specific version

npm install @coveo/atomic-react@<version>

Learn more