# Contributing to mutagen Hi there! So you want to join the mutagen project or at least know what it entails? Welcome and read on! ## Getting started High level approach: 1. Find something to fix/improve 2. Change code, tests, docs, whatever 3. If you changed code, run `cargo test` (once we have a test suite, that is) both in the `mutagen/` dir and the `plugin/` subdirectory. If you cannot get the code to build / tests to pass, don't fret, just mark your contribution as work in progress ("WIP"). 4. Open a pull request. For that you need to fork the repository. See [GitHub's help page](https://help.github.com/articles/fork-a-repo/) for more information. ### Finding something to fix/improve All issues on mutagen are mentored, if you want help with an issue just ask @llogiq. Some issues are easier than others. The [good first issue](https://github.com/llogiq/mutagen/labels/good%20first%20issue) label can be used to find the easy issues. If you want to work on an issue, please leave a comment to have it assigned to you. ### Writing code, tests, docs, etc. All contributions are equally welcome, whether it's refactorings for a more readable codebase, fixing a bug or implementing new functionality, adding tests, documentation or setting up or improving CI, we'll be happy to have your contributions. ### Getting your contribution into mutagen Contributions to mutagen should be made in the form of GitHub pull requests. Each pull request will be reviewed by a core contributor (someone with permission to land patches) and either landed in the main tree or given feedback for changes that would be required. All code in this repository is under either the [Apache License 2.0](LICENSE.Apache2) or the [MIT License](LICENSE.MIT). ## Conduct We follow the [Rust Code of Conduct](http://www.rust-lang.org/conduct.html).