CLI runs on Node 20+: npx storebound (bunx keeps working)
- cli/lib/rt.ts: the runtime layer on node: modules (spawn / spawnSync with Bun's defaults, exit codes and "Executable not found", which with PATHEXT, sleep, serve, Glob, hasher, gunzip, stdin, SQLite, packageRoot, config imports with a type-stripping fallback for Node 20); every Bun.* use in cli/ goes through it - tools/gen-embedded.ts -> cli/lib/embedded.ts: templates/, cli/shots/*.html and Play's Data safety form embedded (replaces Bun text imports; the bundle and the compiled sidecar carry them), checked fresh by bun run ci - package.json: bin dist/storebound.mjs (Node ESM bundle, tools/build-node.ts, prepack), engines node >=20 - bun run ci: node bundle + node smoke (real node: --version, help, check same as Bun, scan, release plan --help, init, MCP handshake + tool call); Forgejo CI sets up Node 20; tests/node-compat.test.ts guards cli/ - install writes npx MCP commands when run with Node; bin/storebound falls back to Node - docs: npx storebound init (Node 20+) or bunx storebound init
This commit is contained in:
parent
614c32bcba
commit
36a8bf9625
73 changed files with 1195 additions and 251 deletions
16
README.md
16
README.md
|
|
@ -10,12 +10,12 @@ in-app products and prices, the compliance forms, even the consoles that have no
|
|||
[](https://www.npmjs.com/package/storebound)
|
||||
[](LICENSE)
|
||||
[](CHANGELOG.md)
|
||||
[](https://bun.sh)
|
||||
[](#install-and-start)
|
||||
[](package.json)
|
||||
[](skills)
|
||||
[](docs/mcp.md)
|
||||
|
||||
**Website: [storebound.dev](https://storebound.dev) · Docs: [docs/](docs/README.md) · `bunx storebound init`**
|
||||
**Website: [storebound.dev](https://storebound.dev) · Docs: [docs/](docs/README.md) · `npx storebound init`**
|
||||
|
||||
[](https://storebound.dev/#teaser)
|
||||
|
||||
|
|
@ -80,16 +80,18 @@ Per-tool setup: [docs/getting-started.md](docs/getting-started.md#install-for-yo
|
|||
|
||||
## Install and start
|
||||
|
||||
You need [Bun](https://bun.sh) 1.1+ (and `ffmpeg` for icons, screenshots and video).
|
||||
You need [Node](https://nodejs.org) 20+ or [Bun](https://bun.sh) 1.1+ (and `ffmpeg` for icons, screenshots and video).
|
||||
|
||||
```sh
|
||||
cd my-app
|
||||
bun add -d storebound playwright
|
||||
bunx storebound init # --profile app (default) | subscription-app | game
|
||||
bunx storebound install --agent claude # or codex, cursor, gemini, copilot, windsurf, opencode
|
||||
bunx storebound check # offline: config, limits, Data safety, products, files
|
||||
npm i -D storebound playwright # or: bun add -d storebound playwright
|
||||
npx storebound init # --profile app (default) | subscription-app | game (Bun: bunx storebound init)
|
||||
npx storebound install --agent claude # or codex, cursor, gemini, copilot, windsurf, opencode
|
||||
npx storebound check # offline: config, limits, Data safety, products, files
|
||||
```
|
||||
|
||||
Every `npx storebound ...` below works as `bunx storebound ...` too.
|
||||
|
||||
Then ask your agent: "take my app to Google Play and the App Store". Claude Code plugin, credentials, coming from
|
||||
fastlane: [docs/getting-started.md](docs/getting-started.md). Desktop app: [storebound.dev/#download](https://storebound.dev/#download).
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue