]> git.sesse.net Git - stockfish/blob - .github/CONTRIBUTING.md
Add CONTRIBUTING.md
[stockfish] / .github / CONTRIBUTING.md
1 # Contributing to Stockfish
2
3 Welcome to the Stockfish project! We are excited that you are interested in
4 contributing. This document outlines the guidelines and steps to follow when
5 making contributions to Stockfish.
6
7 ## Table of Contents
8
9 - [Building Stockfish](#building-stockfish)
10 - [Making Contributions](#making-contributions)
11   - [Reporting Issues](#reporting-issues)
12   - [Submitting Pull Requests](#submitting-pull-requests)
13 - [Code Style](#code-style)
14 - [Community and Communication](#community-and-communication)
15 - [License](#license)
16
17 ## Building Stockfish
18
19 In case you do not have a C++ compiler installed, you can follow the
20 instructions from our wiki.
21
22 - [Linux][linux-compiling-link]
23 - [Windows][windows-compiling-link]
24 - [macOS][macos-compiling-link]
25
26 ## Making Contributions
27
28 ### Reporting Issues
29
30 If you find a bug, please open an issue on the
31 [issue tracker][issue-tracker-link]. Be sure to include relevant information
32 like your operating system, build environment, and a detailed description of the
33 problem.
34
35 _Please note that Stockfish's development is not focused on adding new features.
36 Thus any issue regarding missing features will potentially be closed without
37 further discussion._
38
39 ### Submitting Pull Requests
40
41 - Functional changes need to be tested on fishtest. See
42   [Creating my First Test][creating-my-first-test] for more details.
43   The accompanying pull request should include a link to the test results and
44   the new bench.
45
46 - Non-functional changes (e.g. refactoring, code style, documentation) do not
47   need to be tested on fishtest, unless they might impact performance.
48
49 - Provide a clear and concise description of the changes in the pull request
50   description.
51
52 _First time contributors should add their name to [AUTHORS](../AUTHORS)._
53
54 _Stockfish's development is not focused on adding new features. Thus any pull
55 request introducing new features will potentially be closed without further
56 discussion._
57
58 ## Code Style
59
60 We do not have a strict code style. But it is best to stick to the existing
61 style of the file you are editing.
62
63 ## Community and Communication
64
65 - Join the [Stockfish discord][discord-link] to discuss ideas, issues, and
66   development.
67 - Participate in the [Stockfish GitHub discussions][discussions-link] for
68   broader conversations.
69
70 ## License
71
72 By contributing to Stockfish, you agree that your contributions will be licensed
73 under the GNU General Public License v3.0. See [Copying.txt][copying-link] for
74 more details.
75
76 Thank you for contributing to Stockfish and helping us make it even better!
77
78 [copying-link]: https://github.com/official-stockfish/Stockfish/blob/master/Copying.txt
79 [discord-link]: https://discord.gg/GWDRS3kU6R
80 [discussions-link]: https://github.com/official-stockfish/Stockfish/discussions/new
81 [creating-my-first-test]: https://github.com/glinscott/fishtest/wiki/Creating-my-first-test#create-your-test
82 [issue-tracker-link]: https://github.com/official-stockfish/Stockfish/issues
83 [linux-compiling-link]: https://github.com/official-stockfish/Stockfish/wiki/Compiling-from-source#linux
84 [windows-compiling-link]: https://github.com/official-stockfish/Stockfish/wiki/Compiling-from-source#windows
85 [macos-compiling-link]: https://github.com/official-stockfish/Stockfish/wiki/Compiling-from-source#macos