# Contributing to Chalkboard
Thank you for considering to contribute to Chalkboard! This document provides guidelines and instructions for doing so.

## How to Ask Questions
If you have a question about how to use Chalkboard, please first check the [`README.md`](https://www.github.com/Zushah/Chalkboard/blob/main/README.md) file, or the [`./examples/`](https://www.github.com/Zushah/Chalkboard/tree/main/examples) folder, or above all, the [documentation](https://zushah.github.io/Chalkboard) website. If you still need help, feel free to open an [issue](https://www.github.com/Zushah/Chalkboard/issues) with the `question` label.

## How to Report Bugs
If you find a bug in the source code, please open an [issue](https://www.github.com/Zushah/Chalkboard/issues). 

When reporting a bug, please include:
- A descriptive title
- Steps to reproduce the behavior
- Expected behavior
- Actual behavior
- Environment (i.e. browser or Node)

## How to Suggest Features
If you have an idea for a new feature or an improvement to an existing one, please submit an [issue](https://www.github.com/Zushah/Chalkboard/issues).
- Tag the issue as `feature`.
- Explain why this feature would be beneficial.
- Provide at least one example of how the new feature would be used.

## Local Development Setup
If you want to contribute to Chalkboard, you will need to set it up locally.

1. Fork the repository to your own GitHub account.
2. Clone your fork locally.
3. Install dependencies: `npm install`.
4. Make your contribution.
5. Run tests and make sure they all pass: `npm run test`. Make new tests if applicable.
6. Submit a pull request against the main branch of the Chalkboard repository.
7. In the pull request's description, thoroughly explain your contribution and, if applicable, link it to relevant open issues.

## License
By contributing to Chalkboard, you agree that your contributions will be licensed under the [Mozilla Public License 2.0](https://www.github.com/Zushah/Chalkboard/blob/main/LICENSE.md).
