**feat(cli, scripts): introduce CLI package and automated publishing process**

- Added a new `@soulcraft/brainy-cli` package to provide a dedicated CLI interface for the Brainy database.
- Implemented a CLI wrapper script (`cli-wrapper.js`) to manage global package execution and version handling.
- Introduced `scripts/publish-cli.js` to automate synchronized publishing of the main package and CLI, ensuring version consistency.
- Created documentation for CLI usage and publishing workflow (`publishing-cli.md`).
- Updated `package.json` to include CLI-related build and deploy scripts.
- Adjusted `README.md` to document the CLI package, usage instructions, and build separation.

This feature introduces a standalone CLI package, improves deployment automation, and enhances documentation to align with the updated architecture.
This commit is contained in:
David Snelling 2025-07-02 11:32:06 -07:00
parent fa9b1164fd
commit 087eb51799
11 changed files with 417 additions and 22 deletions

View file

@ -22,6 +22,9 @@
"./types/augmentations": {
"import": "./dist/types/augmentations.js",
"types": "./dist/types/augmentations.d.ts"
},
"./cli": {
"import": "./dist/cli.js"
}
},
"engines": {
@ -34,7 +37,6 @@
"build:cli": "BUILD_TYPE=cli rollup -c rollup.config.js",
"start": "node dist/unified.js",
"demo": "npm run build && npm run build:browser && npx http-server -o /index.html",
"cli": "npm run build:cli && node ./cli-wrapper.js",
"version": "node scripts/generate-version.js",
"version:patch": "npm version patch",
"version:minor": "npm version minor",
@ -44,8 +46,9 @@
"format": "prettier --write \"src/**/*.{ts,js}\"",
"check-format": "prettier --check \"src/**/*.{ts,js}\"",
"check-style": "node scripts/check-code-style.js",
"prepare": "npm run build && npm run build:cli",
"prepare": "npm run build",
"deploy": "npm run build && npm publish",
"deploy:both": "node scripts/publish-cli.js",
"deploy:cloud:aws": "cd cloud-wrapper && npm run build && npm run deploy:aws",
"deploy:cloud:gcp": "cd cloud-wrapper && npm run build && npm run deploy:gcp",
"deploy:cloud:cloudflare": "cd cloud-wrapper && npm run build && npm run deploy:cloudflare",
@ -53,9 +56,6 @@
"postinstall": "echo 'Note: If you encounter dependency conflicts with TensorFlow.js packages, please use: npm install --legacy-peer-deps'",
"dry-run": "npm pack --dry-run"
},
"bin": {
"brainy": "cli-wrapper.js"
},
"keywords": [
"vector-database",
"hnsw",
@ -85,7 +85,6 @@
"dist/types/",
"LICENSE",
"README.md",
"cli-wrapper.js",
"brainy.png"
],
"devDependencies": {