generator-node
Yeoman generator for Node projects.
This generator provides the following features:
- src folder as a starter point to build your project.
- esm as a simple, babel-less, bundle-less ECMAScript module loader.
- ESLint to provide a pluggable linting utility for JavaScript.
- Prettier as an opinionated code formatter.
- Jest as a JavaScript Testing Framework with a focus on simplicity.
- jest-runner-eslint as an ESLint runner for Jest.
- ntl support. Interactive cli to list and run package.json scripts.
- EditorConfig to help you define and maintain consistent coding styles between different editors.
- README.md and CHANGELOG.md with information about the project, installation, usage, development, author and license.
- Badges for License.
Project files
.
|--- src
| |--- index.js
|--- .editorconfig
|--- .eslintignore
|--- .eslintrc.json
|--- .gitattributes
|--- .gitignore
|--- .npmrc
|--- babel.config.js
|--- CHANGELOG.md
|--- jest-eslint.config.js
|--- jest-test.config.js
|--- jest.config.js
|--- LICENSE
|--- main.js
|--- package.json
|--- README.md
Installation
- Install Yeoman
$ npm i -g yo
or
$ yarn global add yo
- Install Generator
$ npm i -g @robertoachar/generator-node
or
$ yarn global add @robertoachar/generator-node
Usage
- Create a project
# Create a directory for your project
$ mkdir awesome-project
# Change into directory
$ cd awesome-project
# Generate a project
$ yo @robertoachar/node
- Run project
Action | Usage (npm) | Usage (yarn) |
---|---|---|
Start development mode | npm start |
yarn start |
Run lint | npm run lint |
yarn lint |
Start lint in watch mode | npm run lint:watch |
yarn lint:watch |
Run tests | npm run jest |
yarn jest |
Start tests in watch mode | npm run jest:watch |
yarn jest:watch |
Run tests with code coverage | npm run jest:coverage |
yarn jest:coverage |
Run lint + tests | npm test |
yarn test |
Start lint + tests in watch mode | npm test:watch |
yarn test:watch |
Run lint + tests with code coverage | npm test:coverage |
yarn test:coverage |
Development
Prerequisites
$ npm i -g add yo
or
$ yarn global add yo
Clone the repo
$ git clone https://github.com/robertoachar/generator-node.git
Run generator
# Change into directory
$ cd generator-node
# Link generator
$ yarn link # or npm link
# Run generator
$ yo @robertoachar/node