# yeoman-generator-node **Repository Path**: mirrors_glensc/yeoman-generator-node ## Basic Information - **Project Name**: yeoman-generator-node - **Description**: Create a Node.js module - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-03-25 - **Last Updated**: 2026-01-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Node Generator [![Build Status](https://secure.travis-ci.com/yeoman/generator-node.svg?branch=master)](https://travis-ci.com/yeoman/generator-node) [![Gitter](https://img.shields.io/badge/Gitter-Join_the_Yeoman_chat_%E2%86%92-00d06f.svg)](https://gitter.im/yeoman/yeoman) [![OpenCollective](https://opencollective.com/yeoman/backers/badge.svg)](https://opencollective.com/yeoman#support) `generator-node` creates a base template to start a new Node.js module. It is also easily composed into your own generators so you can only target your efforts at your generator's specific features. ## Install ``` $ npm install --global generator-node ``` ## Usage ``` $ yo node ``` *Note that this template will generate files in the current directory, so be sure to change to a new directory first if you don't want to overwrite existing files.* That'll generate a project with all the common tools setup. This includes: - Filled `package.json` file - [jest](https://facebook.github.io/jest/) unit test and code coverage (optionally tracked on [Coveralls](https://coveralls.io/)) - [ESLint](http://eslint.org/) linting and code style checking - [Travis CI](https://travis-ci.com/) continuous integration (optional) - [License](https://spdx.org/licenses/) ### Running tests Once the project is scaffolded, inside the project folder run: ``` $ npm test ``` You can also directly use jest to run test on single files: ``` $ npm -g install jest-cli $ jest --watch ``` ### Publishing your code Once your tests are passing (ideally with a Travis CI green run), you might be ready to publish your code to npm. We recommend you using [npm version](https://docs.npmjs.com/cli/version) to tag release correctly. ``` $ npm version major $ git push --follow-tags # ATTENTION: There is no turning back here. $ npm publish ``` ## Extend this generator First of all, make sure you're comfortable with [Yeoman composability](http://yeoman.io/authoring/composability.html) feature. Then in your own generator: ```js var Generator = require('yeoman-generator'); module.exports = class extends Generator({ default() { this.composeWith(require.resolve('generator-node/generators/app'), { /* provide the options you want */ }); } }); ``` ### Options Here's a list of our supported options: - `boilerplate` (Boolean, default true) include or not the boilerplate files (`lib/index.js`, `test/index.js`). - `cli` (Boolean, default false) include or not a `lib/cli.js` file. - `editorconfig` (Boolean, default true) include or not a `.editorconfig` file. - `git` (Boolean, default true) include or not the git files (`.gitattributes`, `.gitignore`). - `license` (Boolean, default true) include or not a `LICENSE` file. - `travis` (Boolean, default true) include or not a `.travis.yml` file. - `githubAccount` (String) Account name for GitHub repo location. - `readme` (String) content of the `README.md` file. Given this option, generator-node will still generate the title (with badges) and the license section. ### Sub generators If you don't need all the features provided by the main generator, you can still use a limited set of features by composing with our sub generators directly. Remember you can see the options of each sub generators by running `yo node:sub --help`. - `node:boilerplate` - `node:cli` - `node:editorconfig` - `node:eslint` - `node:git` - `node:readme` ## Backers Love Yeoman work and community? Help us keep it alive by donating funds to cover project expenses!
[[Become a backer](https://opencollective.com/yeoman#support)] ## License MIT © Yeoman team (http://yeoman.io)