Spree Commerce is a free, open source e-commerce platforms project written in Ruby and released under BSD-3-Clause. It has 15,699 GitHub stars, 5,301 forks and 143 open issues, and was last pushed 6 hours ago. On this registry it ranks #4 of 30 tracked projects in E-commerce Platforms, with 5 head-to-head comparisons available. It gained 8 stars over the last 6 tracked days.

Spree Commerce — Open source headless commerce with REST API, no platform fees, built for B2B and marketplaces

What is Spree Commerce?

What it is

Spree Commerce is an open-source headless commerce platform written in Ruby and released under the BSD 3-Clause license. It lives in the open-source e-commerce ecosystem and is described as a platform for B2B, marketplaces, and enterprise use, with a REST API, a TypeScript SDK, and a Next.js storefront. It targets teams that want to self-host their commerce stack, keep ownership of code, data, and infrastructure, and avoid platform fees or vendor lock-in.

The concrete problem it addresses is the need for a commerce backend that can serve many frontends and business models without tying a store to a proprietary hosted platform. The project describes cross-border storefronts, B2B wholesale, custom backends, multi-tenant setups, and multi-vendor marketplaces.

Key capabilities

  • The platform provides a REST API with publishable keys, rate limiting, and an OpenAPI 3.0 specification, plus a TypeScript SDK.
  • The Spree CLI boots a project, runs generators and migrations, handles upgrades, and calls the Admin API with get, post, patch, and delete commands.
  • The CLI can generate full API endpoints, models, and database schema for a resource, and it supports offline exploration of endpoints and schemas.
  • A Next.js storefront is included as an open-source project built with Next.js 16, React 19, Tailwind CSS 4, and TypeScript, with multi-region URL routing.
  • Topic labels indicate support for headless commerce, B2B commerce, marketplace workflows, multi-tenant operation, and multi-vendor use.

Who uses it and how

  • B2B teams can use the REST API and TypeScript SDK to connect a wholesale catalog and order flow to a custom frontend.
  • Marketplace operators can use the multi-tenant and multi-vendor topic labels to describe a store model with several sellers or tenants.
  • Developers and operators can create a local project with the Spree starter command, then use the CLI to boot the web, worker, and database services, generate resources, and query or create records through the Admin API.

Getting started

The typical local path is npx create-spree-app@latest my-store, which sets up the backend, Admin Dashboard, and Next.js storefront in one project and requires Node.js 22+ and Docker. A free hosted sandbox is also mentioned for trying the Admin Dashboard and storefront without installing anything.

When to use it — and when not to

Use Spree Commerce when a team wants an open-source, self-hosted commerce backend for B2B, marketplace, or headless storefront work and is prepared to operate the Ruby stack, database, workers, and local Node.js and Docker tooling. It is a poor fit when the priority is a hosted service with no infrastructure responsibility, because the provided facts emphasize self-hosting and local development. The supplied metadata also lists zero contributors, a repo age of zero years, and 143 open issues, so those figures warrant due diligence before adoption.

project readme (upstream, from github) — read inline

Spree Commerce open source headless eCommerce platform for B2B, Multi-seller Marketplace, cross-border eCommerce, multi-tenant eCommerce

Website · Free Sandbox · Next.js Storefront · Documentation · API · Roadmap · Discord

Gem Total Downloads codecov License

Open-source headless eCommerce platform with a complete REST API, TypeScript SDK, and a production-ready Next.js storefront. BSD 3-Clause licensed — keep full ownership of your code, data, and infrastructure.

Everything you need to launch cross-border storefronts, B2B wholesale, or a custom commerce backend.

Getting Started

The fastest way to try Spree is to create a free sandbox — a hosted Spree store with the Admin Dashboard and storefront, nothing to install.

To run Spree locally instead, copy and paste the following command to your terminal to set it up in 5 minutes:

npx create-spree-app@latest my-store

This sets up the Spree Commerce backend, the Admin Dashboard, and the Next.js storefront in a single project. The storefront is built with Next.js 16, React 19, Tailwind CSS 4, and TypeScript.

You need to have Node.js (22+) installed and Docker running. Learn more in the installation docs.

If you like what you see, consider giving Spree a GitHub star ⭐

Thank you for supporting Spree open-source ❤️

Agentic Development

Building with an AI coding agent? Install the Spree agent skills — they teach Claude Code, Cursor, Copilot, and 60+ other tools Spree's conventions, customization patterns, and upgrade flows:

npx skills add spree/agent-skills

Then connect the docs MCP server and let your agent build with you. Learn more in the Agentic Development docs.

Spree CLI

@spree/cli manages your Spree project from the terminal — boot the stack, run generators and migrations, tail logs — and calls the Admin API directly with simple get/post/patch/delete commands. It's a fast way to inspect and script your store, and works hands-free for AI agents (zero-config credentials in local dev):

spree dev                                                            # boot the project (web + worker + db)
spree generate api_resource Brand name:string description:rich_text  #  Creates full API endpoints, models and database schema for a Brand resource
spree api get /orders -q status_eq=complete --limit 10               # query the Admin API
spree api post /products -d '{"name":"Classic Tee","prices":[{"currency":"USD","amount":"29.99"}]}'  # create resources

spree api endpoints and spree api schema explore the full API offline. See the CLI docs.

Features

Everything below ships in this repository under the BSD 3-Clause license.

  • REST API & TypeScript SDK — production-grade REST API, publishable keys, rate limiting, and OpenAPI 3.0 spec. The TypeScript SDK adds autocomplete and type safety.
  • Spree CLI — manage projects from the terminal (boot, generate, migrate, upgrade) and call the Admin API directly with spree api get/post/... — zero-config in local dev, built for scripts and AI agents.
  • Next.js Storefront — open-source storefront built with Next.js 16, React 19, Tailwind CSS 4, and TypeScript. Full shopping experience, multi-region URL routing, Stripe payments (Apple Pay, Google Pay, Klarna, Affirm), customer accounts, and SEO built in. Try the demo
  • Cross-Border Commerce — Markets bundle currency, language, payment methods, and shipping rules per country. Translations Center for bulk product localization. EU Omnibus Directive compliance with automatic 30-day price history.
  • B2B & WholesalePrice Lists for regional, B2B, and wholesale pricing. Customer Groups for segmentation. Companies, company locations, and company contacts for buyer organizations. Catalogs for curated, per-segment product assortments. Gated storefronts via publishable keys.
  • Sales Channels — run multiple storefronts, Points of Sale, B2B panels, mobile apps off a single Spree backend, each with its products, pricing, payment methods, and shipping rules
  • Payment Sessions — provider-agnostic payment processing. Shipped with Stripe, Adyen and PayPal plugins ready to use with Next.js storefront. Add your own with the Payment Provider SDK.
  • Promotions & Gift Cards — advanced rules-based promotions engine and native Gift Cards support.
  • Products & CatalogMetafields, CSV importer/exporter, digital products, product tags, bulk operations.
  • MeiliSearch Integration — typo-tolerant product search and faceted filtering.
  • Admin Dashboard — built with Tailwind CSS with role-based permissions.
  • Integrations & ExtensibilityEvent Bus, Webhooks 2.0, native integrations (GA4, GTM, Klaviyo).
  • Agentic Development25 agent skills (npx skills add spree/agent-skills) teaching AI coding agents Spree's conventions, a docs MCP server, LLM-ready documentation (llms.txt, per-page Markdown, offline npm package), and a generated AGENTS.md/CLAUDE.md in every scaffolded project.

Deployment

Spree backend can be deployed everywhere, on cloud, on prem or VPS. We provide official Docker images and Dockerfiles so you can use AWS, Azure, GCP, Render, Railway, Fly.io, Heroku, or any other Docker-compatible host. The Next.js storefront can be deployed to Vercel, Netlify, or any Node.js host. See the Deployment Documentation for more details.

If you want to quickly evaluate Spree, you can use the free sandbox — a hosted Spree store with the Admin Dashboard and storefront, nothing to install.

Screenshots

Next.js eCommerce Storefront

A production-ready, open-source storefront built with Next.js 16, React 19, and TypeScript. Fork it, cu

readme truncated — read the full docs on github

Frequently asked questions

Is Spree Commerce free to use?

Spree Commerce is open source under the BSD-3-Clause licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does Spree Commerce do?

Open source headless commerce with REST API, no platform fees, built for B2B and marketplaces

What is Spree Commerce written in?

Spree Commerce is primarily written in Ruby. Its source is publicly available at https://github.com/spree/spree, and it has 15,699 GitHub stars.