@beuluis/hook-cli
v1.3.0
Published
A small hook cli that can be used with for example husky
Downloads
51
Readme
About The Project
A small hook cli that can be used with for example husky.
Disclaimer
I know that most of this stuff is already solved by some awesome tools. So this is really just a CLI playground for me.
Installation
npm i -D @beuluis/hook-cliUsage
Run commands. For example using the hooks in .husky.
```bash
npx hook-cli [command] [...]
```Commands
checkCommitMessageIssueKey
Check the pattern of a commit message
| Option | Description | Type | default |
| ------------------- | ------------------------------------------------------------------------ | --------- | ------- |
| -p, --prefix | Prefix of the issue key. | string | |
| `-m`, `--message` | Get message from command line instead of file. | `string` | |
| -w, --warn-only | If true only prints warning messages and do not exit with not zero code. | boolean | false |
Example usage
npx hook-cli checkCommitMessageIssueKey "$1" -p "HelloWorld"npx hook-cli checkCommitMessageIssueKey .git/COMMIT_EDITMSG -p "KEY"npx hook-cli checkCommitMessageIssueKey -m "KEY-12 message" -p "KEY"npx hook-cli checkCommitMessageIssueKey -m "KEY-12 message" -p "KEY" -wcheckCommitMessagePattern
Check the pattern of a commit message
| Option | Description | Type | default |
| ------------------- | ------------------------------------------------------------------------ | --------- | ------- |
| -p, --pattern | Regex pattern to check the message against. | string | |
| `-m`, `--message` | Get message from command line instead of file. | `string` | |
| -w, --warn-only | If true only prints warning messages and do not exit with not zero code. | boolean | false |
Example usage
npx hook-cli checkCommitMessagePattern "$1" -p "HelloWorld"npx hook-cli checkCommitMessagePattern .git/COMMIT_EDITMSG -p "HelloWorld"npx hook-cli checkCommitMessagePattern -m "I say HelloWorld" -p "HelloWorld"npx hook-cli checkCommitMessagePattern -m "I say HelloWorld" -p "HelloWorld" -wcheckForFileChanged
Check if a staged file like a changelog was changed locale or remote compared to another branch
| Option | Description | Type | default |
| ------------------- | ------------------------------------------------------------------------ | --------- | ------- |
| -b, --branch | Branch to compare to. | string | main |
| -w, --warn-only | If true only prints warning messages and do not exit with not zero code. | boolean | false |
Example usage
npx hook-cli checkForFileChanged CHANGELOG.mdnpx hook-cli checkForFileChanged CHANGELOG.md -b trunknpx hook-cli checkForFileChanged CHANGELOG.md -wnpx hook-cli checkForFileChanged CHANGELOG.md -b trunk -wcheckForVulnerabilities
Runs a package audit and collects the results.
| Option | Description | Type | default |
| ------------------------- | ------------------------------------------------------------------------------------------------ | --------------------------------------------- | ---------- |
| -m, --package-manager | The package manager you want to use. Keep in mind that both package managers report differently. | yarn, npm | npm |
| -l, --audit-level | The severity of the vulnerabilities what the script will report. | info, low, moderate, high, critical | critical |
| -p, --prod | If true only run audit for prod dependencies and skip dev ones. | boolean | false |
| -w, --warn-only | If true only prints warning messages and do not exit with not zero code. | boolean | false |
Example usage
npx hook-cli checkForVulnerabilitiesnpx hook-cli checkForVulnerabilities --package-manager yarnnpx hook-cli checkForVulnerabilities --audit-level lownpx hook-cli checkForVulnerabilities --warn-onlynpx hook-cli checkForVulnerabilities --prodnpx hook-cli checkForVulnerabilities -l high -m yarn -w -pcheckPackageVersion
Check if the version field is the same for package.json and package-lock.json
| Option | Description | Type | default |
| ------------------- | ------------------------------------------------------------------------ | --------- | ------- |
| -w, --warn-only | If true only prints warning messages and do not exit with not zero code. | boolean | false |
Example usage
npx hook-cli checkPackageVersioncheckPackageVersionInFile
Check if the version field is the same for package.json and file
| Option | Description | Type | default |
| ------------------- | ------------------------------------------------------------------------ | --------- | ------- |
| -p, --json-path | Path in json file to check | string | `` |
| -w, --warn-only | If true only prints warning messages and do not exit with not zero code. | boolean | false |
Example usage
npx hook-cli checkPackageVersionInFile hello.json -p 'path.version'npx hook-cli checkPackageVersionInFile hello.json -p 'path.version' -wupdateReminder
Prints a list of packages that have updates.
| Option | Description | Type | default |
| ------------------------- | ------------------------------------------------------------------------------------------------ | ------------- | ------- |
| -m, --package-manager | The package manager you want to use. Keep in mind that both package managers report differently. | yarn, npm | npm |
| -w, --warn-only | If true only prints warning messages and do not exit with not zero code. | boolean | false |
Example usage
npx hook-cli updateRemindernpx hook-cli updateReminder -m yarnnpx hook-cli updateReminder -wnpx hook-cli updateReminder -m yarn -wUseful
- Print help page for command
npx hook-cli [command] --help- Test command during development (Exit codes get not correctly forwarded).
npm run hook-cli -- [command]- Test command during development with correct exi code.
npx tsx src/index.ts [command]