We're always looking for people to help make Sonarr even better, there are a number of ways to contribute.
Setup guides, FAQ, the more information we have on the wiki the better.
- Visual Studio 2019 or higher (https://www.visualstudio.com/vs/). The community version is free and works (https://www.visualstudio.com/downloads/) or Jetbrains Rider
- HTML/Javascript editor of choice (VS Code/Webstorm/etc)
- Git
- NodeJS (Node 10.X.X or higher)
- Yarn
- Fork Sonarr
- Clone the repository into your development machine. info
- Install the required Node Packages
yarn install - Start webpack to monitor your dev environment for any frontend changes that need post processing using
yarn startcommand. - Build the project in Visual Studio, Setting startup project to
Sonarr.Consoleand framework tox86 - Debug the project in Visual Studio
- Open http://localhost:8989
All issues must follow the provided templates, these templates help us triage and review contributions efficiently issues that do not use the templates may be closed without notice.
- We expect that all issues are opened by a human selecting the appropriate issue template while opening the issue
- Issues opened automatically or by other means may be closed automatically
- We also expect discussions on issues to be conducted by humans, we are not interested in conversing with AI or triaging AI hallucinations
- Bug reports for issues that generate logs must contain a link to the approproate trace logs. See the Wiki for more information
- We prefer small PRs that focus on a single issue
- Discuss before building large features. For major features or architectural changes, please open an issue first. Once we've agreed on a solution the work can begin
- Small bug fixes or improvements can usually go straight to PR, but we may ask for additional information, including logs before reviewing
- Understand the code before changing it. Follow existing code structure and standards
- Add tests (unit/integration) when appropriate
- Commit with *nix line endings for consistency
- Test thoroughly, all code must be tested to ensure it compiles and works correctly
- You are responsible for all code and you should understand it's functionality, including reviewing it before submission
AI tools can be useful, but unreviewed AI slop or automated AI agents is not.
The standard is the same regardless of how the code was written: you are responsible for every line of your contribution. If you can't explain why a line is there and why it's correct, it shouldn't be in your PR.
Specifically:
- If you use AI to help write code, you must understand every line of what you're submitting
- Do not paste raw AI output into issues, PRs, or comments. If you use AI to help draft text, rewrite it in your own words
- Remove AI-generated footers, co-author attributions, and "Generated with..." signatures before submitting. Their presence tells us you didn't review your own submission carefully enough to notice them
- Automated submissions — bots or agents opening issues or posting PRs without meaningful human review — will be treated as spam
If you have any questions about any of this, please let us know.