Skip to content

Commit 580e73f

Browse files
committed
Add a page for general contribution guidelines.
1 parent 2a358ba commit 580e73f

File tree

3 files changed

+73
-5
lines changed

3 files changed

+73
-5
lines changed

engine/guidelines/best_practices.rst

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -233,8 +233,4 @@ larger if there is no other choice.
233233
.. _doc_best_practices_for_engine_contributors_license_compliance:
234234

235235
Libraries must use a permissive enough license to be included into Godot.
236-
Some examples of acceptable licenses are Apache 2.0, BSD, MIT, ISC, and MPL 2.0.
237-
In particular, we cannot accept libraries licensed under the GPL or LGPL since
238-
these licenses effectively disallow using it in proprietary software
239-
(which Godot is distributed as in most exported projects). This
240-
also applies for libraries that are only linked in the editor.
236+
For more information, see :ref:`doc_licenses`.

index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ for your topic of interest. You can also use the search function in the top-left
2525
organization/how_to_contribute
2626
organization/areas
2727
organization/pull_requests/index
28+
organization/general_rules_and_guidelines
2829

2930
.. toctree::
3031
:hidden:
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
General rules and guidelines
2+
============================
3+
4+
This page contains guidelines relevant for contributing to any area of Godot.
5+
6+
When contributing to any particular area, please also refer to its respective guidelines.
7+
8+
Respect Godot's Code of Conduct
9+
-------------------------------
10+
11+
When you contribute to Godot, we expect that you respect Godot's `Code of Conduct <https://godotengine.org/code-of-conduct/>`__.
12+
13+
.. _doc_licenses:
14+
15+
Respect intellectual property
16+
-----------------------------
17+
18+
When you make contributions to Godot, you must be mindful of intellectual property of anything you submit.
19+
20+
If your contribution was completely authored by you, this is not a problem. You can submit your contribution
21+
without reading further.
22+
23+
However, any code, images, or ideas you took from somewhere else are "intellectual property" of the source
24+
you took it from.
25+
26+
In this case, you need to check the license of the intellectual property. Some are permissive enough to be compatible
27+
with Godot's `MIT license <https://github.com/godotengine/godot/blob/master/LICENSE.txt>`__. You must include this
28+
license in your contribution.
29+
Examples of acceptable licenses include Apache 2.0, BSD, MIT, ISC, and MPL 2.0.
30+
31+
However, others are not compatible with Godot's license. This includes "copy-left" licenses like GPL or LGPL,
32+
since these licenses effectively disallow static linking in proprietary software
33+
(which Godot is distributed as in most exported projects).
34+
This also applies for libraries that are only linked in the editor.
35+
36+
Another example of incompatible licenses you should be aware of is "source-available" code.
37+
Most notably, you cannot submit code or ideas from proprietary game engines like Unreal or Unity.
38+
This includes using their code as a reference. We strongly recommend against reading any "source-available" code before
39+
making contributions to Godot, as this may impact your ability to contribute.
40+
41+
Contribute only what you understand
42+
-----------------------------------
43+
44+
Please only submit code that you understand and are prepared to explain to a maintainer.
45+
46+
If you do not fully understand the code, please take extra care to test it rigorously, and disclose this in your
47+
pull request description.
48+
49+
This especially applies if you implement the idea of another person, copy code from elsewhere, or if you use AI to
50+
assist you with your contribution. In all of these cases, you must disclose which part of your submission wasn't fully
51+
authored by you.
52+
53+
AI assisted contributions
54+
-------------------------
55+
56+
The use of AI to contribute to Godot is discouraged.
57+
58+
We acknowledge that AI can be useful, but we are convinced that human effort results in better and more relevant
59+
contributions.
60+
61+
If you do use AI, we expect that you put in effort to proofread and improve anything it generates, and that you disclose
62+
what you used the AI for. Maintainers are spending their personal time reviewing your code, it is your job to ensure
63+
that the code you submit is well-tested and functional.
64+
Please be respectful of their time and only submit something you have put thought and effort into.
65+
66+
Contributions made entirely by AI are prohibited.
67+
68+
.. note:: When this page refers to "AI" it means any LLM/generative
69+
AI model like ChatGPT, Claude, Grok, etc., or any other
70+
models that fulfill the same role. Using translation
71+
software and single-line code completion is acceptable.

0 commit comments

Comments
 (0)