Jumpstart node module, like a bunny!
This generator includes built-in modern tools which have been widely used by the community:
- Automated GitHub release notes generator
- Automated releasing with semantic-release
- Automated testing & validation before any commits
- Automated source-code formatting with prettier
- Eslint linting utility
- Flow static typechecker
- GitHub templates (Issue & Pull Request, License, CoC, etc.)
- Jest testing framework
- Travis Continuous Integration config
npm install -g yo generator-bunny
2. Create new project
Make a new directory:
mkdir my-bunny cd my-bunny
npm start validate
Install and setup semantic-release:
npm install -g semantic-release-cli
Note: Make sure you‘ve set your repository up on GitHub before proceeding otherwise
semantic-releaseinstallation will throw errors!
Select Travis CI, answer
2. Recommended workflow
Make some changes. If you want to commit, run (instead of
npm start commit
Select the type of commit
This project follows the AngularJS Commit Message Conventions. Following a standardized commit message format is important if you want to start a maintainable and scalable project. Also it is required to generate changelog and make automated releasing works.
Push those changes to GitHub
git push origin master
Note: Don‘t add tag, publish, or bump your project version manually. Let
semantic-releasedo those tasks for you. Your release version number is auto-formatted based on SemVer specifications.
3. Your own workflow
You don‘t have to follow those recommended steps. Define your own workflow if you will but one of the consequence is you don‘t get the ability to publish/release your package to npm automatically.
For example, you still can do it like this:
git add . git commit -m "I want to do it my way cause this is my project and I‘m working for myself"
Some useful scripts are provided by nps to help you maintain your project.
To see the list, run:
1. Why does
npm to install dependencies?
We did support auto-detect & auto-install dependencies using
yarnbefore but then decided to drop that feature in v4 because
yarnis buggy and
npmhas a lot more users than
2. Why does
generator-bunny remove lockfiles in pre-commit?
Lockfiles are for apps, not for packages/libraries. Read more on What do you think of lockfiles?
Thanks goes to these people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
MIT © Lufty Wiranda