@erillam/toolkit
v1.0.0-beta.6
Published
CLI and Ink TUI for managing ECEF and WMS Docker stacks.
Readme
toolkit-ng
CLI and Ink TUI for managing ECEF and WMS Docker stacks.
Requirements
- Node.js 20+
Install
If you publish this package without a scope:
npm install -g toolkit-ngIf you publish it under a user or organization scope, replace the package name accordingly:
npm install -g @your-scope/toolkit-ngUsage
Initialize from the directory that should contain the generated workspace. The
workspace root is created as ./<server_name> and contains
config/session.json. The toolkit only reads config/version.json if an
external process creates it.
toolkit --help
toolkit init --name unidad-01 --type unit --state jalisco --seq 01 --env dev
toolkit init --name unidad-01 --type unit --state jalisco --seq 01 --env qa --net custom-net --ecef-sync http://ecef-sync.local --wms-sync http://wms-sync.local
cd unidad-01 && toolkit
toolkit --print-instance-root
toolkit env ecef
toolkit start ecef
toolkit stop eceftoolkit init requires --name, --type, --state and --seq. --env
defaults to dev, --net defaults to <server_name>-net, and
--ecef-sync/--wms-sync are optional registration URLs stored in
projects.<project>.config.sync.registration_url.
Generated config files use the shared ECEF root while keeping one .env per
project, for example /etc/erillamhc/ecef/unidad-01/ecef/.env and
/etc/erillamhc/ecef/unidad-01/wms/.env. Project data is separated by project,
for example /var/lib/erillamhc/ecef/unidad-01/ecef/files and
/var/lib/erillamhc/ecef/unidad-01/wms/files.
Without --action and without --non-interactive, the command opens the Ink
TUI.
Development
From the repository:
npm install
npm run build
npm start -- --helpInspect the Ink TUI
Ink supports React DevTools. Use two terminals with the toolkit package scripts:
npm run dev:inspectnpm run devtoolsdev:inspect keeps the TUI running with tsx watch and DEV=true; devtools
opens the existing standalone React DevTools inspector for the Ink component
tree.
From an instance root that does not contain package.json, run the same scripts
through the repo path:
npm --prefix <repo>/toolkit-ng run dev:inspectnpm --prefix <repo>/toolkit-ng run devtoolsPublish
Review the package and publish it manually:
npm login
npm run release:check
npm publishIf you change the package name to a scoped name such as
@your-scope/toolkit-ng, publish it as public:
npm publish --access publicThe current checkout does not include a test/ directory, so the publish check
focuses on build, CLI smoke validation and package contents.
