Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 35 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,45 @@
# [Spree Commerce Next.js Storefront](https://spreecommerce.org)

[Live Demo](https://demo.spreecommerce.org)
·
[TypeScript SDK](https://www.npmjs.com/package/@spree/sdk)
·
[API Reference](https://spreecommerce.org/docs/api-reference/)
·
[Documentation](https://spreecommerce.org/docs/)
·
[Spree Website](https://spreecommerce.org)
·
[For Enterprise](https://spreecommerce.org/enterprise/)

[![MIT License](https://img.shields.io/badge/license-MIT-green.svg)](LICENSE)
[![Next.js 16](https://img.shields.io/badge/Next.js-16-black)](https://nextjs.org)
[![React 19](https://img.shields.io/badge/React-19-61DAFB?logo=react&logoColor=white)](https://react.dev)

# Spree Storefront

A production-ready, headless ecommerce storefront for [Spree Commerce](https://spreecommerce.org), built with Next.js 16, React 19, and the [Spree REST API](https://spreecommerce.org/docs/api-reference). Open source (MIT) and free to fork and customize.
A production-ready, headless eCommerce storefront for [Spree Commerce](https://spreecommerce.org), built with Next.js 16, React 19, and the [Spree REST API](https://spreecommerce.org/docs/api-reference). Open source (MIT) and free to fork and customize.

[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https://github.com/spree/storefront)

[Live Demo](https://demo.spreecommerce.org) | [Quickstart Docs](https://spreecommerce.org/docs/developer/storefront/nextjs/quickstart) | [TypeScript SDK](https://www.npmjs.com/package/@spree/sdk)
If you like what you see, consider giving this repo a star ⭐

Thank you for supporting Spree open source ❤️

## Get Started Locally

Get started locally within a few minutes with a single command scaffolding a full Spree project with Next.js Storefront (optional).

```bash
npx create-spree-app@latest my-store
```

The CLI walks you through an interactive setup:

1. Choose Full-stack (Backend + Next.js Storefront) or Backend only
2. Optionally load sample data (products, categories, images)

Once complete, your store should be running at http://localhost:3000/admin. The port can be different if `3000` is already used on your system. You need to have Node.js 20+ and Docker running.
Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Clarify port information to avoid user confusion.

The statement "your store should be running at http://localhost:3000/admin" could be confusing in the context of a storefront README. Based on line 172, the Next.js storefront dev server runs on port 3001, while port 3000 typically hosts the Spree Commerce backend (including /admin).

Consider clarifying:

  • Port 3000 = Spree backend admin panel
  • Port 3001 (or different) = Next.js storefront
  • Or specify that the CLI may use different ports

This would help users understand what to expect after running the setup command.

📝 Suggested clarification
-Once complete, your store should be running at http://localhost:3000/admin. The port can be different if `3000` is already used on your system. You need to have Node.js 20+ and Docker running.
+Once complete, the Spree backend admin should be accessible at http://localhost:3000/admin and the storefront at http://localhost:3001 (ports may vary if already in use). You need to have Node.js 20+ and Docker running.
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
Once complete, your store should be running at http://localhost:3000/admin. The port can be different if `3000` is already used on your system. You need to have Node.js 20+ and Docker running.
Once complete, the Spree backend admin should be accessible at http://localhost:3000/admin and the storefront at http://localhost:3001 (ports may vary if already in use). You need to have Node.js 20+ and Docker running.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@README.md` at line 43, Update the README sentence to clearly map ports: state
that port 3000 is typically the Spree backend (including /admin) and the Next.js
storefront dev server runs on port 3001 by default (so the storefront URL is
e.g. http://localhost:3001), and note that the CLI or environment may assign
different ports so users should check the output or .env for actual ports; amend
the line mentioning "http://localhost:3000/admin" to reflect this distinction
and mention both ports (3000 for Spree admin, 3001 for Next.js storefront) and
that ports can differ if already in use.


Read the [installation docs](https://spreecommerce.org/docs/developer/getting-started/quickstart).

## Why This Storefront

Expand Down
Loading