# Contributing to Terasology If you would like to contribute code, documentation, or other assets you can do so through GitHub by forking the repository and sending a pull request (PR). You can also simply report issues (bugs), but please search for any previous reports first. *When submitting code, please make every effort to follow existing conventions and style in order to keep the code as readable as possible.* Read on for an overview and [check the wiki for more details](https://github.com/MovingBlocks/Terasology/wiki). For questions please join us in our [forum] or [Discord]. ## File an Issue You can report bugs and feature requests to [GitHub Issues](https://github.com/MovingBlocks/Terasology/issues). As mentioned please look for a similar existing issue before submitting a new one. For finding easy to do issues to start with look at the [Good First Issue](https://github.com/MovingBlocks/Terasology/labels/Good%20First%20Issue) issues. We prefer questions and support requests be posted in the [forum] or [Discord]. __Please provide as much information as possible to help us solve problems and answer questions better!__ [forum]: https://forum.terasology.org/forum/ [Discord]: https://discord.gg/Terasology ## PR Title / Commit Message Guidelines We try to follow the [conventional commits](https://www.conventionalcommits.org/en/v1.0.0-beta.2/) style for commit messages and pull request titles. This leads to **more readable messages** that are easy to follow when looking through the **project history**. But also, we use the git commit messages to **generate the Terasology change log**. ### Commit Message Format Each commit message consists of a **header**, a **body** and a **footer**. The header has a special format that includes a **type**, a **scope** and a **subject**: ``` ():