packer-cli
Packer CLI helps you to kick start new node module projects compliant with NodeJS and Browser, prescribing best practices. Packer encapsulating file-watching, live-reloading, transpiling, bundling and unit test framework integration with coverage and much more, so you don’t have to. You will get to enjoy the latest latest JavaScript awesomeness with flexibility to custom fit your project needs.
To do so, we provide a generator ecosystem via command line to scaffold complete projects with full control over all exposed workflows.
Explained in detail: Build Node Modules Like a Pro with Packer CLI
📖 Table of Contents
<li>
<a rel="nofollow noopener" target="_blank" href="#hammer_and_pick-build-configuration">Build Configuration</a>
</li>
<li>
<a rel="nofollow noopener" target="_blank" href="#seedling-contributions">Contributions</a>
</li>
<li>
<a rel="nofollow noopener" target="_blank" href="#copyright-license">License</a>
</li>
💡 Tech Stack
✨ Usage
Proceed with next steps if your platform meet following prerequisites.
- Install Node.js on your device.
🔎 Basic Usage
You can simply run the following command in a preferred directory to generate a new library project using Packer CLI,
npx packer-cli generate my-library
or
npm install packer-cli -g && packer generate my-library
Once project is generated and dependencies are installed, you can use the following NPM scripts:
# Run project on watch mode npm run watch # Production build npm run build # Run Style and script lint tasks npm run lint # Run style lint task npm run lint:style # Run script lint task npm run lint:script # Run auto format source task npm run format # Run unit test suite on development envrionemnt watch mode npm run test # Run unit test suite with coverage on development envrionemnt watch mode npm run test:coverage # Run unit test suite on continues integration environment mode npm run test:ci # Run unit test suite with coverage mode on continues integration environment mode npm run test:coverage:ci # Bump package version and push updated package config npm version major|minor|patch # Build project and publish to NPM npm run release
Generated project structure can be viewed here
⚙️ Standalone Usage
You can also use packer CLI standalone on any packer compliant project to customize the NPM scripts generated.
Usage: packer [--version | -v] | [--help | -h] | <command>[<args>]
Arguments supported with all commands
+ Logging flags
[--trace] set console log level to trace
[--info] set console log level to information
[--warn] set console log level to warning
[--error] set console log level to error
[--silent] set console log level to silent
+ Other Flags
[--config | -c] dynamic packer config path
Generate a new library project via packer
generate | g <project name>
[--skipInstall | -sk] skip dependency install after project
These are packer commands can be used on generated project
build | b trigger build
[--perf | -P] execute build task with rollup performance monitoring
watch | w trigger serve on watch mode
test | t execute project test suite
[--watch | -W] execute test on watch mode
[--coverage | -C] execute test suite with coverage
clean | c clean project build artifacts and temporary files generated
lint | l execute lint for project source
[--style | -sc] execute only style lint
[--script | -sr] execute only script lint
format | f auto format project source
⚒️ Build Configuration
Build configuration can be updated after project generation via .packerrc.js
. Refer packer configuration options for detailed configuration options list.
🌱 Contributions
Feel free to open an issue or create a PR.
©️ License
Packer-CLI is MIT licensed. Please refer LICENSE for more information.