Skip to content

luftywiranda13/generator-bunny

Repository files navigation

generator-bunny

Jumpstart node module, like a bunny!

Scaffold node module or open-source project without having to deal with complicated setup.


Why?

This generator includes built-in modern tools which have been widely used by the community:

Getting started

1. Installation

npm install -g yo generator-bunny

2. Create new project

Make a new directory:

mkdir my-bunny
cd my-bunny

Generate files:

yo bunny

Validate project:

npm start validate

Usage

1. First-timer

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-release installation will throw errors!

Then run:

semantic-release-cli setup

Select Travis CI, answer no to overwrite

There‘s already a general purpose Travis CI configuration stored in .travis.yml. You can just leave it like that because it‘s already more than enough in most common situation.

2. Recommended workflow

Make some changes. If you want to commit, run (instead of git commit):

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-release do 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"

Tips

Some useful scripts are provided by nps to help you maintain your project.

To see the list, run:

npm start

FAQ

1. Why does generator-bunny use npm to install dependencies?

We did support auto-detect & auto-install dependencies using yarn before but then decided to drop that feature in v4 because yarn is buggy and npm has a lot more users than yarn.

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?

Inspiration

Contributors

Thanks goes to these people (emoji key):


Lufty Wiranda

💻 📖 🚇

This project follows the all-contributors specification. Contributions of any kind welcome!

License

MIT © Lufty Wiranda