@spree/docs 0.1.31 → 0.1.33
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api-reference/admin-api/authentication.md +161 -0
- package/dist/api-reference/admin-api/errors.md +277 -0
- package/dist/api-reference/admin-api/introduction.md +68 -0
- package/dist/api-reference/admin-api/querying.md +296 -0
- package/dist/api-reference/store.yaml +610 -528
- package/dist/developer/contributing/developing-spree.md +24 -11
- package/package.json +1 -1
|
@@ -13,6 +13,12 @@ Spree is a big monorepo. For a faster clone, use a **partial clone** which downl
|
|
|
13
13
|
git clone --filter=blob:none https://github.com/spree/spree.git
|
|
14
14
|
```
|
|
15
15
|
|
|
16
|
+
## Prerequisites
|
|
17
|
+
|
|
18
|
+
You need **Node.js 20+** to run the workspace scripts (including `pnpm server:setup`, which both backend and TypeScript contributors use). Install it via [nvm](https://github.com/nvm-sh/nvm), [mise](https://mise.jdx.dev), [fnm](https://github.com/Schniz/fnm), or your package manager (`brew install node` on macOS).
|
|
19
|
+
|
|
20
|
+
`pnpm` is provisioned automatically via [Corepack](https://nodejs.org/api/corepack.html) (bundled with Node) — the repository pins its version in `package.json`, and the first `pnpm` command will fetch the matching release. If Corepack is disabled in your environment, run `corepack enable` once.
|
|
21
|
+
|
|
16
22
|
## Spree codebase
|
|
17
23
|
|
|
18
24
|
Spree is a monorepo with three main areas:
|
|
@@ -42,15 +48,7 @@ All Spree models, controllers and other Ruby classes are namespaced by the `Spre
|
|
|
42
48
|
|
|
43
49
|
The server app is not checked into the monorepo. It's cloned from [spree-starter](https://github.com/spree/spree-starter) on first setup, with `SPREE_PATH=..` automatically configured so it uses your local Spree gems.
|
|
44
50
|
|
|
45
|
-
**Step 1:
|
|
46
|
-
|
|
47
|
-
```bash
|
|
48
|
-
docker compose up -d # starts Postgres, Redis, Meilisearch
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
Or install PostgreSQL and Redis locally if you prefer.
|
|
52
|
-
|
|
53
|
-
**Step 2: Clone the server app**
|
|
51
|
+
**Step 1: Clone the server app**
|
|
54
52
|
|
|
55
53
|
```bash
|
|
56
54
|
pnpm server:setup
|
|
@@ -58,19 +56,34 @@ pnpm server:setup
|
|
|
58
56
|
|
|
59
57
|
This clones [spree-starter](https://github.com/spree/spree-starter) into `server/` and sets `SPREE_PATH=..` in `server/.env` so it uses your local Spree gems.
|
|
60
58
|
|
|
61
|
-
**Step
|
|
59
|
+
**Step 2: Configure and run**
|
|
62
60
|
|
|
63
61
|
```bash
|
|
64
62
|
cd server
|
|
65
63
|
# Edit .env if needed (e.g. DATABASE_USERNAME, DATABASE_HOST, DATABASE_PORT)
|
|
66
|
-
bin/setup # installs Ruby (via mise),
|
|
64
|
+
bin/setup # installs Ruby (via mise), Postgres/Redis/Meilisearch (via brew), gems, prepares database
|
|
67
65
|
bin/dev # starts Rails + Sidekiq + CSS watchers via overmind
|
|
68
66
|
```
|
|
69
67
|
|
|
68
|
+
`bin/setup` installs system services natively (PostgreSQL, Redis, Meilisearch) via `brew bundle` on macOS or `apt-get` on Linux. If you'd rather run those services in Docker, start them from the repo root before running `bin/setup`:
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
docker compose up -d postgres redis meilisearch
|
|
72
|
+
```
|
|
73
|
+
|
|
70
74
|
Use `bin/setup --reset` to drop and recreate the database.
|
|
71
75
|
|
|
72
76
|
The app runs at [http://localhost:3000](http://localhost:3000). Admin Panel is at [http://localhost:3000/admin](http://localhost:3000/admin).
|
|
73
77
|
|
|
78
|
+
**Step 3 (optional): Load sample data**
|
|
79
|
+
|
|
80
|
+
To populate your store with sample products, customers, orders, and configuration:
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
pnpm server:load_sample_data # from repo root
|
|
84
|
+
# or, from server/: bin/rails spree:load_sample_data
|
|
85
|
+
```
|
|
86
|
+
|
|
74
87
|
### Running engine tests
|
|
75
88
|
|
|
76
89
|
Each engine has its own test suite. First install the shared dependencies at the `spree/` level, then navigate into the specific engine to set up and run its tests:
|