@guoyunhe/create-cli
TypeScript icon, indicating that this package has built-in type declarations

1.8.0 • Public • Published

@guoyunhe/create-cli

Initialize a Node.js command line tool project

Get Started

Create a new project

npm create @guoyunhe/cli my-cli

Initialize an existing project

cd my-cli
npm init @guoyunhe/cli

Project structure

├── dist # Build output
│   ├── index.js # CJS API entry
│   ├── index.mjs # ESM API entry
│   ├── index.d.ts # TypeScript declaration
│   ├── my-cli.js # CJS CLI script
│   └── my-cli.mjs # ESM CLI script
├── src # Source code
│   ├── bin # CLI scripts
│   │   └── my-cli.ts
│   ├── index.test.ts # API unit test
│   └── index.ts # API entry (add all exports here)
├── .editorconfig
├── .gitignore
├── CHANGELOG.md
├── package.json
├── README.md
└── tsconfig.json

Package scripts

# Build output
npm run build
# Build output in watch mode
npm run watch
# Format source code
npm run format
# Check lint issues
npm run lint
# Run unit tests (support all jest command options)
npm test
# Run unit tests in watch mode
npm test -- --watch
# Update unit test snapshots
npm test -- -u

Advanced Options

Initial package version

1.0.0 by default.

npm create @guoyunhe/cli my-cli --package-version 0.1.0

Add multiple bin

Let's say, you want to add a new bin called health-check.

First, create src/bin/health-check.ts, with shebang #!/usr/bin/env node:

#!/usr/bin/env node

console.log('Doing health check...');

// Add your code...

Then, add bin entry to your package.json:

{
  "bin": {
    "health-check": "dist/health-check.js"
  }
}

Package Sidebar

Install

npm i @guoyunhe/create-cli

Weekly Downloads

1

Version

1.8.0

License

GPL-3.0

Unpacked Size

74.3 kB

Total Files

8

Last publish

Collaborators

  • guoyunhe