A Yeoman generator for scaffolding simple node modules.
Scaffolding a new node module
npm install -g yo grunt-cli
- Install the nodemod generator:
npm install -g generator-nodemod
- Create a new directory and initialize a Git repo on it for your new node module:
mkdir your-project cd your-project git init git remote add origin https://github.com/some-user/some-project.git
- Run the generator:
Answer the questions.
STRONGLY RECOMMENDED: commit the generated code to your git repository before making any modifications. This will make it much easier to see a diff of the work you have done vs. the generator output.
git add --all git commit -m "Initial commit"
Start writing your code
README.md file in your newly created node module for more information.
This repo uses grunt-bump and Semantic Versioning to version and tag releases. To release a new version, run the appropriate command:
grunt release:major # bump major version, eg. 1.0.2 -> 2.0.0 grunt release:minor # bump minor version, eg. 0.1.3 -> 0.2.0 grunt release:patch # bump patch version, eg. 0.0.1 -> 0.0.2 grunt release:prerelease # bump pre-release version, eg. 1.0.0 -> 1.0.0-1
Make sure to push tags:
git push --tags origin master
Publish the package to npm's public registry:
To make sure everything worked just fine, go to http://npmjs.com/package/generator-nodemod.
Heads up! To publish, you must have a user on the npm registry. If you don't have one, create it with
npm adduser. If you created one on the site, use
npm login to store the credentials on the client. You can use
npm config ls to ensure that the credentials are stored on your client. Check that it has been added to the registry by going to http://npmjs.com/~.
Given a version number
MAJOR.MINOR.PATCH, increment the:
MAJORversion when you make incompatible API changes,
MINORversion when you add functionality in a backwards-compatible manner, and
PATCHversion when you make backwards-compatible bug fixes.
Additional labels for pre-release and build metadata are available as extensions to the
See the Semantic Versioning specification for more information.
See the CHANGELOG.