spree
Open-source headless eCommerce platform with REST API, TypeScript SDK, and Next.js storefront. Natively supports B2B, multi-vendor marketplace, cross-border, and multi-tenant commerce.
Smart Download
Visit Project Homepage
No installer available yet — head to the source repository
One command to launch a full-stack open-source eCommerce site with B2B, cross-border, and marketplace support.
Core Features
- Production-ready Next.js storefront (Next.js 16, React 19, Tailwind CSS 4) with Stripe/Apple Pay/Google Pay
- Complete REST API + TypeScript SDK for type-safe frontend-backend communication
- Cross-border commerce: per-country currency, language, payment methods, shipping rules; translation center and EU Omnibus compliance
- B2B wholesale: customer groups, price lists, dedicated catalogs, promotions engine, gift cards
- Multi-vendor marketplace & multi-tenant SaaS: manage multiple independent stores or vendors from one admin
What It Can't Do
- •Free Render instances spin down after inactivity (30-60s wake-up) – not for production. For production, follow the official sizing guide. Learning curve: requires basic Ruby on Rails and Docker knowledge. Read the Quickstart docs first.
Use Cases
- Launch a global cross-border eCommerce store
- Build a B2B wholesale platform with customer groups and tiered pricing
- Operate a multi-vendor marketplace (e.g., local business alliance)
- Create a multi-tenant eCommerce SaaS with isolated storefronts for each tenant
Detailed Introduction
Spree Commerce is a production-ready, open-source headless eCommerce platform built with Ruby on Rails. It provides a complete REST API with OpenAPI 3.0 spec, a TypeScript SDK for type-safe frontend development, and an official Next.js storefront (Next.js 16, React 19, Tailwind CSS 4). The platform natively supports complex scenarios including cross-border commerce (multi-currency, multi-language, per-country payment/shipping), B2B wholesale (catalogs, price lists, customer groups), multi-vendor marketplaces, digital products, and multi-tenant SaaS. Features include a built-in promotions engine, gift cards, MeiliSearch integration, webhooks, event bus, and an admin dashboard with role-based permissions. Spree is backed by an enterprise support team and offers long-term support (LTS) options. Its modular architecture allows businesses to start simple and scale to enterprise complexity without platform migration.
Troubleshooting & FAQ (2)
TroubleshootingHow to fix 'major-version-specific directory names' error when launching Spree Commerce with PostgreSQL 18?
The PostgreSQL 18 Docker image now requires data to be stored in a major-version-specific subdirectory. The default Spree docker-compose.yml volume mount at /var/lib/postgresql/data triggers the error. Fix: In docker-compose.yml, change the volume mount path to /var/lib/postgresql, then remove old volumes and restart with docker compose down -v && docker volume rm my-store_postgres_data && docker compose up -d. Adjust volume name if different.
TroubleshootingHow to fix Spree checkout skipping confirmation step when order total is 0?
In Spree v4.3.1, a bug caused the confirmation step to be skipped even if the order total was 0. The issue was a broken remove_transition line that ignored the :unless condition. The fix (PR #13901) removes that line; the correct behavior is controlled by the :if condition on go_to_state :confirm. Upgrade your Spree installation to a version that includes this fix, or apply the patch manually.
Tags
Getting Started
Download installer
Click the button above to download the installer for your system
Install the software
Double-click the downloaded installer and follow the prompts
Ensure Node.js 22+ and Docker are installed
Run: npx create-spree-app@latest my-store
Follow the prompts to set up admin credentials, then visit http://localhost:3000
- Ensure Node.js 22+ and Docker are installed
- Run: npx create-spree-app@latest my-store
- Follow the prompts to set up admin credentials, then visit http://localhost:3000
Checksum not available
This project has not published a SHA-256 checksum on its GitHub Release page
SHA256 Checksum
No checksum available
Download directly from GitHub Releases and verify file integrity yourself
All SHA-256 checksums on this platform are extracted from the project's official GitHub Release page, without any modification. You can independently verify them on the GitHub Releases page.
Open Source Transparency
View GitHub SourceUninstall Info
Delete the project directory, then run `docker compose down -v` to remove containers and volumes. If using a local database, drop the database manually.
No Extra Dependencies
Ready to use after download. No additional runtime required.
Having issues? Check the FAQ below
2 FAQs
Similar Projects
pocketbase
PocketBase is an open source Go backend that includes embedded SQLite with realtime subscriptions, built-in file & user management, admin dashboard UI, and simple REST API. Can be used as standalone app or Go framework.
Visual Studio Code (Code - OSS)
A free, open-source code editor by Microsoft with rich extensions, debugging, and Git integration. The most popular developer tool worldwide.
scrcpy
Display and control your Android device from your computer via USB or TCP/IP. No root required, high performance, low latency, supports audio and video mirroring.