# Contributing

## How to contribute

- File issues.
- Edit/write documentation.
- Submit pull requests.
- Test in different environments.
- Raise awareness.

## Summary of tools

The Following tools are getting used:

- `TypeScript` as primary language - https://www.typescriptlang.org/
- `rollup` for build - https://rollupjs.org/
- `nodejs` during development - https://nodejs.org/
- `npm` for dependency management, packaging and distribution - https://www.npmjs.com/
- `git` for version control - https://git-scm.com/

## Initial setup

Instructions on setting up development environment:

- Install `node` and `npm` - https://nodejs.org/
- Checkout code from GitHub - you may fork the code first into your GitHub account.
- Use `npm i` to install dependencies:
  ```bash
  $ npm i
  ```

### Basic development workflow

1. Checkout a new branch.
1. Make code changes (src/specs)
1. Build:
   ```bash
   $ npm run build
   ```
1. To raise a PR, please follow GitHub guidelines. Raise an issue if you are unclear.
