The Holistics CLI contains 2 parts: - The CLI app (https://github.com/holistics/holistics-cli): an open source repo that handles the downloading/upadting/installing of the CLI app. See its Readme for more details. - The CLI core: the public package hosted
npm install @holistics/cli-coreThe Holistics CLI contains 2 parts:
- The CLI app (https://github.com/holistics/holistics-cli): an open source repo that handles the downloading/upadting/installing of the CLI app. See its Readme for more details.
- The CLI core: the public package hosted on NPM registry that contains the core logic of the CLI app. Note that the source code is private but the compiled code is public.
The CLI core is using our private packages (such as aml, aml-std, etc...), so to expose these logic to the CLI app:
1. We use bun to build all the dependencies into a single giant commands.js file.
2. Publish this file to public npm registry (https://www.npmjs.com/package/@holistics/cli-core)
3. The CLI app directly download and use the commands.js file from the npm registry.
The CLI core can also be installed as a package from NPM registry with the name @holistics/cli-core.
This is possible because we already compiled the code into a single commands.js file, and removed all the private dependencies (check bun_build.sh)
bun at the version specified in .bun-version file.bun_build.shIf bun is not installed at the local, the build will be skipped.
``build file
./bun_build.sh