Understanding the Storefront SDK
The Storefront SDK is the set of packages and starter apps you use to build a customer-facing storefront on Propeller. Every layer talks to the Propeller GraphQL API. You adopt as much or as little as you need: a single typed client, a full component library or a complete storefront you scaffold in one command.
Checked against propeller-sdk-v2 0.18.0, propeller-v2-react-ui 0.32.0, propeller-v2-vue-ui 0.31.1 and create-propeller-shop 0.11.2 on 28 October 2026.
Prerequisites
Use Node.js 22 for the packages and the boilerplates. To run a storefront with data, you also need from your Propeller environment:
- A Propeller tenant and Backoffice access. Contact your Propeller account manager if you do not have one yet.
- Two API keys for that tenant, created in the Backoffice: one for the storefront and an order-editor key for order actions. See Keys and security for what each may do, and Environments and access for creating them.
- The id of the Channel the storefront sells on. The storefront reads its catalog root and its guest account from the Channel.
The layers
Each layer builds on the one below it. Higher layers are optional, and the bars on the right show which layers each approach uses.
- SDK is the data layer. It gives you a typed GraphQL client and a service for every supported query and mutation. It works in any JavaScript or TypeScript project.
- Core holds the shared types, the formatters and helpers the UI builds on and
createServices(), which bundles the SDK services for a client. - UI libraries add ready-made commerce components (product cards, grids, cart, checkout, account) plus headless hooks, for React or Vue.
- CMS renderers turn a CMS page into rendered blocks. They ship no blocks of their own, and they do not fetch content: a separate provider does that. See CMS integration.
- Accelerator is the top layer: complete Next.js, Vue and Nuxt storefronts with the layers below wired in, which you scaffold with the
create-propeller-shopCLI.
Each layer works on its own. You do not need the Accelerator to use the UI libraries, and you do not need the UI libraries to use the SDK.
The packages
The packages are MIT licensed and public on npm under the @propeller-commerce scope, so no credentials are needed to install them. Always install the scoped names below.
The boilerplates are public GitHub repositories, each with its own changelog and settings example: Next.js, Vue and Nuxt.
The payment, PunchOut and SpareParts Live packages are server-side add-ons rather than layers of the frontend stack. The boilerplates already use them. See Payment providers and PunchOut.
How the pieces connect
The UI libraries do not ship a GraphQL client or a fixed endpoint, because transport differs per app (a Next.js app proxies through a route handler, a Vite app through its server, and so on). You own the client. The contract has three steps:
- Create a client with
createClient()from the SDK, pointing at your endpoint. - Call
createServices(client)from the core layer to build the typedServicesbundle. - Pass both into the UI library once, at your app root:
PropellerDepsProviderin React, thepropellerVueplugin in Vue. The session (user, Company, language) goes intoPropellerProvider. Every component below reads the services and the session from context.
import { createClient } from '@propeller-commerce/propeller-sdk-v2';
import { createServices } from '@propeller-commerce/propeller-v2-core-ui';
// Steps 1 and 2: build once, share everywhere.
export const graphqlClient = createClient({ endpoint: '/api/graphql' });
export const services = createServices(graphqlClient);
Add the SDK to your app walks through all three steps in a running app. SDK services and UI components cover each layer in full.
The domain guides teach the products, pricing, cart and account models with raw GraphQL. Those concepts apply whether you use the SDK or not: the SDK wraps the same queries in typed services and components.
Versions and release notes
Release notes for the SDK packages and the boilerplates are in each repository's changelog on GitHub, linked in the table above. The changelog on this site covers the Propeller platform and its APIs, not the SDK packages.
The guides in this section explain how to choose, set up and run the SDK on Propeller. For the exact API of the version you installed (every prop, hook option and method signature) use the API docs above or the TypeScript types in your editor.
See also
- Choosing your approach for the three common architectures
- Keys and security for the keys a storefront needs
- Accelerator for the boilerplates and the CLI
- Component reference for the list of components and hooks