@spree/docs 0.1.30 → 0.1.31
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.
|
@@ -18,7 +18,7 @@ git clone --filter=blob:none https://github.com/spree/spree.git
|
|
|
18
18
|
Spree is a monorepo with three main areas:
|
|
19
19
|
|
|
20
20
|
- **`spree/`** — Ruby gems (core, api, admin, emails) distributed as separate packages via RubyGems
|
|
21
|
-
- **`packages/`** — TypeScript packages (
|
|
21
|
+
- **`packages/`** — TypeScript packages (SDKs, CLI, project scaffolding, docs)
|
|
22
22
|
- **`server/`** — A Rails application cloned from [spree-starter](https://github.com/spree/spree-starter) that mounts the Spree gems (not checked in — run `pnpm server:setup` to create it)
|
|
23
23
|
|
|
24
24
|
## Backend Development (Ruby)
|
|
@@ -180,7 +180,12 @@ pnpm dev
|
|
|
180
180
|
|
|
181
181
|
| Package | Path | Description |
|
|
182
182
|
|---|---|---|
|
|
183
|
-
| `@spree/sdk` | `packages/sdk` | TypeScript SDK for the Spree
|
|
183
|
+
| `@spree/sdk` | `packages/sdk` | TypeScript SDK for the Spree Store API |
|
|
184
|
+
| `@spree/cli` | `packages/cli` | CLI for managing Spree Commerce projects |
|
|
185
|
+
| `create-spree-app` | `packages/create-spree-app` | Project scaffolding (`npm create spree-app`) |
|
|
186
|
+
| `@spree/docs` | `packages/docs` | Developer documentation for AI agents and local reference |
|
|
187
|
+
|
|
188
|
+
Internal packages (`@spree/admin-sdk`, `@spree/sdk-core`) are also part of the workspace but are not published to npm.
|
|
184
189
|
|
|
185
190
|
### Common commands
|
|
186
191
|
|
|
@@ -189,7 +194,7 @@ Run from the repository root — [Turborepo](https://turbo.build/) orchestrates
|
|
|
189
194
|
| Command | Description |
|
|
190
195
|
|---|---|
|
|
191
196
|
| `pnpm dev` | Start Docker backend + watch mode for all packages |
|
|
192
|
-
| `pnpm build` | Build all packages (
|
|
197
|
+
| `pnpm build` | Build all packages (Turbo resolves dependency order) |
|
|
193
198
|
| `pnpm test` | Run tests in all packages |
|
|
194
199
|
| `pnpm lint` | Lint all packages |
|
|
195
200
|
| `pnpm typecheck` | Type-check all packages |
|
|
@@ -226,9 +231,10 @@ pnpm --filter @spree/sdk generate:zod
|
|
|
226
231
|
|
|
227
232
|
### Releasing packages
|
|
228
233
|
|
|
229
|
-
|
|
234
|
+
Published packages use [Changesets](https://github.com/changesets/changesets) for version management. Each package owns its own `.changeset/` folder, so changesets must be created from inside the package directory:
|
|
230
235
|
|
|
231
236
|
```bash
|
|
237
|
+
cd packages/sdk # or packages/cli, packages/create-spree-app
|
|
232
238
|
pnpm changeset
|
|
233
239
|
```
|
|
234
240
|
|
|
@@ -238,7 +244,7 @@ This creates a changeset file describing your changes. Commit it with your PR. W
|
|
|
238
244
|
|
|
239
245
|
Consistent code style is enforced via automated linters. Please make sure your changes pass linting before submitting a PR.
|
|
240
246
|
|
|
241
|
-
**Ruby:** We use [RuboCop](https://rubocop.org/) for Ruby code.
|
|
247
|
+
**Ruby:** We use [RuboCop](https://rubocop.org/) for Ruby code. The configuration lives in `server/.rubocop.yml` and is shipped with [spree-starter](https://github.com/spree/spree-starter), so it's only available after running `pnpm server:setup`. Run it from the `server/` directory:
|
|
242
248
|
|
|
243
249
|
```bash
|
|
244
250
|
cd server
|
|
@@ -276,20 +282,6 @@ A few tips:
|
|
|
276
282
|
- Keep the first line under 72 characters
|
|
277
283
|
- If your change references a GitHub issue, include `Fixes #<number>` in the commit message or PR description to auto-close it on merge
|
|
278
284
|
|
|
279
|
-
### Using AI tools for development
|
|
280
|
-
|
|
281
|
-
Spree comes with an [AGENTS.md](https://github.com/spree/spree/blob/main/AGENTS.md) file that instructs coding agents like Claude Code or Codex to help you with your development.
|
|
282
|
-
|
|
283
|
-
We also have an MCP server built on top of our Documentation website to help you with your development.
|
|
284
|
-
|
|
285
|
-
Add this URL to your AI tools:
|
|
286
|
-
|
|
287
|
-
```
|
|
288
|
-
https://spreecommerce.org/docs/mcp
|
|
289
|
-
```
|
|
290
|
-
|
|
291
|
-
In Claude Code you need to go to [Connectors](https://claude.ai/settings/connectors) settings and add the URL.
|
|
292
|
-
|
|
293
285
|
## Submitting Changes
|
|
294
286
|
|
|
295
287
|
We use [GitHub Actions](https://github.com/spree/spree/actions) to run CI.
|
|
@@ -314,7 +306,7 @@ To help us review your PR quickly:
|
|
|
314
306
|
- **Describe your changes.** Explain what you changed and why. Include screenshots for UI changes.
|
|
315
307
|
- **Add tests.** All new features and bug fixes should include appropriate test coverage.
|
|
316
308
|
- **Update documentation.** If your change affects user-facing behavior, update the relevant docs.
|
|
317
|
-
- **Include a changeset**
|
|
309
|
+
- **Include a changeset** if your change affects a published TypeScript package (`@spree/sdk`, `@spree/cli`, or `create-spree-app`). Run `pnpm changeset` from inside that package's directory — each package owns its own `.changeset/` folder.
|
|
318
310
|
- **Ensure CI passes.** PRs with failing CI will not be reviewed.
|
|
319
311
|
|
|
320
312
|
## Reporting Bugs
|
|
@@ -329,8 +321,24 @@ When reporting a bug, please include:
|
|
|
329
321
|
- **Relevant logs or stack traces** (formatted with triple backticks)
|
|
330
322
|
- **Your environment** (Ruby version, database, OS)
|
|
331
323
|
|
|
324
|
+
We have an [issue template](https://github.com/spree/spree/blob/main/.github/ISSUE_TEMPLATE.md) that will guide you through this.
|
|
325
|
+
|
|
332
326
|
Issues that are open for 14 days without actionable information or activity will be marked as stale and then closed. They can be re-opened if the requested information is provided.
|
|
333
327
|
|
|
328
|
+
## Using AI Tools for Development
|
|
329
|
+
|
|
330
|
+
Spree comes with an [AGENTS.md](https://github.com/spree/spree/blob/main/AGENTS.md) file that instructs coding agents like Claude Code or Codex to help you with your development.
|
|
331
|
+
|
|
332
|
+
We also have an MCP server built on top of our Documentation website to help you with your development.
|
|
333
|
+
|
|
334
|
+
Add this URL to your AI tools:
|
|
335
|
+
|
|
336
|
+
```
|
|
337
|
+
https://spreecommerce.org/docs/mcp
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
In Claude Code you need to go to [Connectors](https://claude.ai/settings/connectors) settings and add the URL.
|
|
341
|
+
|
|
334
342
|
## That's a wrap!
|
|
335
343
|
|
|
336
344
|
Thank you for participating in Open Source and improving Spree - you're awesome!
|