Skip to content

Latest commit

 

History

History
92 lines (63 loc) · 2.74 KB

CONTRIBUTING.md

File metadata and controls

92 lines (63 loc) · 2.74 KB

Contributing Guide

Contributing to ts-playground is fairly easy. This document shows you how to get the project, run all provided tests and generate a production-ready build.

It also covers provided tasks that help you develop with ts-playground.

Dependencies

To make sure that the following instructions work, please install the following dependencies on you machine:

  • Node.js (comes with a bundles npm)
  • Git

Installation

To get the source of ts-playground, clone the git repository via:

git clone https://github.com/gregoranders/ts-playground

This will clone the complete source to your local machine. Navigate to the project folder and install all needed dependencies via npm:

npm install

This command installs everything which is required for building and testing the project.

Testing

Unit testing using Jest

npm test executes the unit tests.

Building

npm run build executes the build.

Developing

npm run watch executes the build in watch mode.

Ensure code quality docker required

npm run lint executes markdownlint and remark checks

npm run codeclimate executes the Code Climate checks

npm run codacy executes the Codacy checks

Contributing/Submitting changes

  • Check out a new branch based on development and name it to what you intend to do:
    • Example:

      git checkout -b BRANCH_NAME origin/development

      If you get an error, you may need to fetch development first by using

      git remote update && git fetch
    • Use one branch per fix/feature

  • Make your changes
    • Make sure to provide a spec for unit tests.
    • Run your tests with npm test.
    • Save integration time and run code quality checks locally with npm run codeclimate and npm run codacy
    • When all tests pass, everything's fine.
  • Commit your changes
  • Make a pull request
    • Make sure you send the PR to the development branch.
    • CI is watching you!