---
title: Contributing
---

# How to contribute

Want to contribute to `Diagral` integration? Great! We have a few small asks though!

- Please create your patch pull requests against the `dev` branch.
- Please be verbose in your description of your changes in your pull requests.


<Steps>
  <Step title="Clone this repo">
    Clone this repo

    ```js
    git clone https://github.com/mguyard/hass-diagral.git
    ```

  </Step>
  <Step title="Create a new branch">
    Create a new branch in your cloned repo

    ```js
    git checkout -b new-feature-x
    ```

  </Step>
  <Step title="Make your changes">
    Develop and test your changes locally
  </Step>
  <Step title="Commit Your Changes">
    Commit your changes with a clear and concise message that follows the [Conventional Commits guidelines](https://www.conventionalcommits.org/en/v1.0.0/).

    ```js
    git commit -m 'feat: Implemented new feature x.'
    ```

  </Step>
  <Step title="Commit Your Changes">
    Commit your changes with a clear and concise message that follows the [Conventional Commits guidelines](https://www.conventionalcommits.org/en/v1.0.0/).

    ```js
    git commit -m 'feat: Implemented new feature x.'
    ```

  </Step>
  <Step title="Push to GitHub">
    Push the changes to your forked repository.

    ```js
    git push origin new-feature-x
    ```

  </Step>
  <Step title="Submit a Pull Request">
    Create a PR against the original project repository in the `dev` branch. Clearly describe the changes and their motivations.
    All PR without enough details will be quickly refused.
  </Step>
</Steps>

🎉 Once your PR is reviewed and approved, it will be merged into the beta branch. After final testing, it will be merged into the main branch.