# How to Contribute

## Issues

Issues are very valuable to this project.

- Ideas are a valuable source of contributions others can make
- Problems show where this project is lacking
- With a question you show where contributors can improve the user experience

Thank you for creating them.

<br><br><br>

## Pull Requests

Pull requests are, a great way to get your ideas into this repository.

When deciding if I merge in a pull request I look at the following things:

### Does it state intent

You should be clear which problem you're trying to solve with your contribution.

For example:

```
Add link to code of conduct in README.md
```

Doesn't tell me anything about why you're doing that

```
Add link to code of conduct in README.md because users don't always look in the CONTRIBUTING.md
```

Tells me the problem that you have found, and the pull request shows me the action you have taken to solve it.

### Is it of good quality

- There are no spelling mistakes
- It reads well
- For english language contributions: Has a good score on Grammarly or Hemingway App

### Does it move this repository closer to my vision for the repository

- The aim of this repository is:

- To provide a README.md and assorted documents anyone can copy and paste, into their project
- The content is usable by someone who hasn't written something like this before
- Foster a culture of respect and gratitude in the open source community

### Does it follow the contributor covenant

This repository has a [code of conduct](/CODE_OF_CONDUCT.md), I will remove things that do not respect it.

### Does it follow the development steps

1. Fork the repository.
2. Clone the forked repository to local.
3. Create your branch from `develop` branch.
4. Develop the package.
5. Commit with a message based on [Conventional Commits](https://www.conventionalcommits.org/).
1. Fill out the description, link any related issues and submit your pull request.  
   **NOTE: Create a pull request to merge into `develop` branch**

#### Commit messages in the most common cases

| Case | Commit message|
| -- | -- |
| Added a new feature | feat: add new feature |
| Added a suggested feature #999 | feat: add new feature<br>Close #999 |
| Fixed a bug | fix: a problem |
| Fixed a reported bug #999 | fix: a problem<br>Close #999 |
| Added features that include breaking changes | feat: add new feature<br><br>BREAKING CHANGE: Details of the changes |

<br><br><br>

## Support

This is an open source project that I am developing in my spare time.  
If you like it, please support me.  
With your support, I can spend more time on development. :)

[![](https://user-images.githubusercontent.com/12690315/50731629-3b18b480-11ad-11e9-8fad-4b13f27969c1.png)](https://www.patreon.com/join/2343451?)  
[![](https://user-images.githubusercontent.com/12690315/66942881-03686280-f085-11e9-9586-fc0b6011029f.png)](https://github.com/users/mob-sakai/sponsorship)

<br><br><br>

## License

By contributing to this repository, you agree that your contributions will be licensed under its MIT license.