# Contributing 💚

We are open to, and grateful for, any contributions made by the community! By contributing to pickadate.js, you agree to abide by the [code of conduct](https://github.com/amsul/pickadate.js/blob/master/CODE_OF_CONDUCT.md).

## Overview

- `yarn` - install dependencies
- `yarn bundle` - build the files from `lib/` to `builds/`
- `yarn start` - build the files in `lib/` and watch for changes
- `yarn test` - run tests
- `yarn publish` - publish new build

## Getting started

To get started with the project, you'll need [Git], [Node], and [Yarn] installed. Then run:

```bash
git clone git@github.com:amsul/pickadate.js.git && cd pickadate.js && yarn
```

Now you can run any of the scripts listed in the [Overview](#overview) above.

[babel]: http://babeljs.io/
[prettier]: https://prettier.io/
[git]: https://git-scm.com/
[node]: https://nodejs.org/
[yarn]: https://yarnpkg.com/

## Sending a Pull Request

For non-trivial changes, please open an issue with a proposal for a new feature or refactoring before starting on the work. We don't want you to waste your efforts on a pull request that we won't want to accept.

On the other hand, sometimes the best way to start a conversation _is_ to send a pull request. Use your best judgment!

In general, the contribution workflow looks like this:

- Open a new issue in the [Issues](https://github.com/amsul/pickadate.js/issues) tracker.
- Fork the repo.
- Create a new feature branch based off the `master` branch.
- Make sure all tests pass and there are no linting errors.
- Submit a pull request, referencing any issues it addresses.

Please try to keep your pull request focused in scope and avoid including unrelated commits.

Thank you for contributing!

### ✌
