/generator-oss-project

Yeoman generator for open source projects.

Primary LanguageJavaScriptMIT LicenseMIT

OSS Project Generator

Travis Status AppVeyor Status CircleCI Status Coveralls Status NPM Version License

Yeoman generator for open source projects.

This generator provides the following features:

  • src and test folder as a starter point to build your project.
  • EditorConfig to help you define and maintain consistent coding styles between different editors.
  • ESLint to provide a pluggable linting utility for JavaScript.
  • Prettier as an opinionated code formatter.
  • Jest as a complete and easy to set-up JavaScript testing solution used by Facebook.
  • Travis and CircleCI as a continuous integration and delivery platform.
  • Appveyor as a continuous delivery service for Windows.
  • Coveralls to help you track your code coverage over time, and ensure that all your new code is fully covered.
  • README.md and CHANGELOG.md with information about the project, installation, usage, development, author and license.
  • Badges for Travis, Appveyor, CircleCI, Coveralls, npm and License.

Project files

.
|--- src
|    |--- index.js
|--- test
|    |--- test.js
|--- .editorconfig
|--- .eslintignore
|--- .eslintrc.json
|--- .gitattributes
|--- .gitignore
|--- .npmrc
|--- .prettierrc
|--- .travis.yml
|--- appveyor.yml
|--- CHANGELOG.md
|--- circle.yml
|--- LICENSE
|--- package.json
|--- README.md

Installation

  • Install Yeoman
$ npm install -g yo
  • Install Generator
$ npm install -g generator-oss-project

Usage

  • Creating a project
# Create a directory for your project
$ mkdir awesome-project

# Change into directory
$ cd awesome-project

# Generate a project
$ yo oss-project
  • Running project
Action Usage
Starting development mode npm start
Linting code npm run lint
Running unit tests npm run jest
Running code coverage npm run coverage
Running lint + tests npm test
Sending coverage results to Coveralls.io npm run coveralls

Development

Prerequisites

$ npm install -g yo

Clone the repo

$ git clone https://github.com/robertoachar/generator-oss-project.git

Run generator

# Change into directory
$ cd generator-oss-project

# Link generator
$ npm link

# Run generator
$ yo oss-project

Author

Roberto Achar

License

MIT