@mpsuesser/project-cli
v0.0.0
Published
An Effect-powered project CLI
Readme
project
An Effect-powered CLI foundation. Product commands will be added without changing the installation and release model established here.
Run
Run the latest npm release without installing it:
bunx @mpsuesser/project-cli --helpOr install the project command globally:
bun add --global @mpsuesser/project-cli
project --helpStandalone executables for macOS, Linux, and Windows are attached to every
GitHub release. They do not
require Bun to be installed. Download the archive for your platform, verify it
against SHA256SUMS, and place project (or project.exe) on your PATH.
Develop
Requires Bun 1.3.14 or newer.
bun install
bun run start --help
bun run checkThe source command is defined in src/command.ts; src/main.ts is only the Bun
runtime boundary.
Release
Commits use Conventional Commits.
Pushing changes to main updates an automated Release Please pull request.
Merging that pull request creates the version tag and GitHub release, publishes
the npm package, and attaches cross-platform binaries.
The npm package requires one manual bootstrap before tokenless releases can work:
- Before merging the first release PR, publish the bootstrap
0.0.0package withnpm publish --access publicwhile authenticated as an owner of the@mpsuesserscope. - In the npm package settings, configure GitHub Actions trusted publishing for
mpsuesser/project-cliand workflow filerelease.yml. - Disable token-based publishing after trusted publishing is verified.
Subsequent releases use npm OIDC trusted publishing with provenance and need no repository secret.
