diff --git a/_tools/redirects/redirects.csv b/_tools/redirects/redirects.csv index a003118c3..9ce1c2c48 100644 --- a/_tools/redirects/redirects.csv +++ b/_tools/redirects/redirects.csv @@ -14,6 +14,7 @@ source,destination /community/contributing/docs_writing_guidelines.html,/contributing/documentation/docs_writing_guidelines.html /community/contributing/editor_and_docs_localization.html,/contributing/documentation/editor_and_docs_localization.html /community/contributing/index.html,/contributing/ways_to_contribute.html +/community/contributing/ways_to_contribute.html,/contributing/how_to_contribute.html /community/contributing/pr_workflow.html,/contributing/workflow/pr_workflow.html /community/contributing/testing_pull_requests.html,/contributing/workflow/testing_pull_requests.html /community/contributing/updating_the_class_reference.html,/contributing/documentation/updating_the_class_reference.html diff --git a/contributing/how_to_contribute.rst b/contributing/how_to_contribute.rst new file mode 100644 index 000000000..34236fe9b --- /dev/null +++ b/contributing/how_to_contribute.rst @@ -0,0 +1,110 @@ +.. _doc_ways_to_contribute: + +How to contribute +================= + +The Godot Engine is free and open-source. Like any community-driven project, we rely on volunteer contributions. +On this page we want to showcase the various ways you as users can participate - to help you find the right starting place with the skillset you have. +Because contrary to popular opinion, we need more than just programmers on the project! + + +Fundraising +----------- + +- **Donate** + + We created the non-profit `Godot Foundation `_ to be able to support the Godot Engine in both matters of finance and administration. + In practice, this means the Foundation hires people to work part-time or full-time on the project. + These jobs include engine development as well as related tasks like code reviews, production management, community & marketing efforts, and more. + + With as little as 5 EUR per month, you can help us keep going strong. + Currently, we are intending to hire more core developers, as to cover more ground with full-time specialists that supplement and guide volunteer work. + + `Join the Development Fund `_ + +- **Donation Drives** + Think about your followers on social media, or other communities you are active in. + Use that reach to remind your social environment that even small contributions can make a difference, especially when done by a great number of people at the same time. + + Are you a content creator? Consider adding a link to the `Godot Development Fund `_ to your descriptions. + If you do live streams, perhaps think about organizing a stream with donation incentives. + +.. - **Buy Official Merch** + +- **Publish Godot Games.** + You heard right, simply publishing a game #MadeWithGodot can positively impact the well-being of this project. + Your personal success elevates the engine to a viable alternative for other developers, growing the community further. + Additionally, it opens the doors for us to approach industry contacts about possible cooperations. + + +Technical contributions +----------------------- + +- **Report bugs & other issues** + As active users of the engine, you are better equipped to identify bugs and other issues than anyone else. + To let us know about your findings, fill out this `bug report form `_ on our GitHub. + Make sure to include as much information as possible to ensure these issues can easily be reproduced by others. + + If you are interested in helping keep our bug tracker organized, you can even join the `bugsquad `_! + +- **Test Development Versions** + While it is recommended to use the stable releases for your projects, you can help us test dev releases, betas, and release candidates + by opening a copy of your project in them and checking what problems this introduces or maybe even solves. + Make sure to have a backup ready, since this can produce irreversible changes. + + Find recent `development versions `_ directly on our download page, or linked in their own blog posts. + +- **Contribute Engine Code (mainly C++)** + The engine development is mainly coordinated on our `Contributor RocketChat `_, + so if you are serious about making PRs you should join us there! + + Read more about the **technical submission process**: :ref:`doc_first_steps` + + For each subject area of the engine, there is a corresponding team to coordinate the work. + Join the linked chat to get more eyes on your related PR, learn about open todos, or partake in meetings. + For some areas, specialists might even be encouraged to step up as maintainer! + `List of teams `_ + +- **Review Code Contributions** + All pull requests need to be thoroughly reviewed before they can be merged into the master branch. + Help us get a headstart by participating in the code review process. + + To get started, chose any `open pull request `_ and reference our **style guide**: :ref:`doc_pr_review_guidelines` + +- **Write Plugins (GDScript, C#, & more)** + Community addons are not directly included in the core engine download or repository, yet they provide essential quality of life upgrades for your fellow game developers. + Upload your plugins to the `Godot Asset Library `_ to make them available to others. + .. update to talk about Asset Store later + +- **Demo projects (GDScript, C#, and making Assets)** + We provide new users with `demo projects `_ so they can quickly test new features or get familiar with the engine in the first place. + At industry events, we might even exhibit these demo projects to showcase what Godot can do! + Help improve existing projects or supply your own to be added to the pool, and join the `demo channel `_ in the Contributor RocketChat to talk about it. + +- **Documentation** + The documentation is one of the most essential parts of any tech project, yet the need to document new features and substantial changes often gets overlooked. + Join the `documentation team `_ to improve the Godot Engine with your technical writing skills. + +- **Translations (spoken languages other than English)** + Are you interested in making the Godot Engine more accessible to non-English speakers? + Contribute to our `community-translations `_. + +Community support +----------------- + +- **Call for Moderators** + With a community of our size, we need people to step up as volunteer moderators in all kinds of places. + These teams are organized by the Godot Foundation, but would not function without the dedication of active community members like you. + + Have a look around your favorite community platform and you might come across open application calls. + +- **Answer tech-support questions** + With many new people discovering the Godot Engine recently, the need for peer-to-peer tech-support has never been greater. + Be it on the `Forum `_, our `subreddit `_, or on `Discord `_, you can always brighten someone's day by helping them get their personal projects back on track. + +- **Create tutorials & more** + How did you get started with the Godot Engine? + Chances are you looked for learning materials outside of what the documentation provides. + Without content creators covering the game development process, there would not be this big of a community today. + Therefore it seemed only right to mention them in a page about important contributions to the project. + diff --git a/contributing/ways_to_contribute.rst b/contributing/workflow/first_steps.rst similarity index 69% rename from contributing/ways_to_contribute.rst rename to contributing/workflow/first_steps.rst index 13943009b..ef9c77d54 100644 --- a/contributing/ways_to_contribute.rst +++ b/contributing/workflow/first_steps.rst @@ -1,54 +1,4 @@ -.. _doc_ways_to_contribute: - -Ways to contribute -================== - -Godot Engine is a non-profit, community-driven free and open source project. -Almost all (but our lead dev Juan, more on that below) developers are working -*pro bono* on their free time, out of personal interest and for the love of -creating a libre engine of exceptional quality. - -This means that to thrive, Godot needs as many users as possible to get -involved by contributing to the engine. There are many ways to contribute to -such a big project, making it possible for everybody to bring something -positive to the engine, regardless of their skill set: - -- **Be part of the community.** The best way to contribute to Godot and help - it become ever better is simply to use the engine and promote it by - word-of-mouth, in the credits or splash screen of your games, blog posts, tutorials, - videos, demos, gamedev or free software events, support on the Q&A, forums, - Contributors Chat, Discord, etc. Participate! - Being a user and advocate helps spread the word about our great engine, - which has no marketing budget and can therefore only rely on its community - to become more mainstream. - -- **Make games.** It's no secret that, to convince new users and especially the - industry at large that Godot is a relevant market player, we need great games - made with Godot. We know that the engine has a lot of potential, both for 2D - and 3D games, but given its young age we still lack big releases that will - draw attention to Godot. So keep working on your awesome projects, each new - game increases our credibility on the gamedev market! - -- **Get involved in the engine's development.** This can be by contributing - code via pull requests, testing the development snapshots or directly the - git *master* branch, report bugs or suggest enhancements on the issue - tracker, improve the official documentation (both the class reference and - tutorials) and its translations. - The following sections will cover each of those "direct" ways - of contributing to the engine. - -- **Donate.** Godot is a non-profit project, but it can still benefit from - user donations for many things. Apart from usual expenses such as hosting - costs or promotional material on events, we also use donation money to - acquire hardware when necessary (e.g. we used donation money to buy a - MacBook Pro to implement Retina/HiDPI support and various other - macOS-related features). - Most importantly, we also used donation money to hire core developers so they - can work full-time on the engine. Even with a low - monthly wage, we need a steady donation income to continue doing this, which - has been very beneficial to the project so far. So if you want to donate - some money to the project, check `our website `_ - for details. +.. _doc_first_steps: Contributing code ----------------- diff --git a/contributing/workflow/index.rst b/contributing/workflow/index.rst index 7950396be..94db9484c 100644 --- a/contributing/workflow/index.rst +++ b/contributing/workflow/index.rst @@ -12,6 +12,7 @@ approach the project. :maxdepth: 1 :name: toc-contributing-workflow + first_steps bisecting_regressions bug_triage_guidelines pr_workflow diff --git a/index.rst b/index.rst index 2fe8e5676..cc39c62d0 100644 --- a/index.rst +++ b/index.rst @@ -129,7 +129,7 @@ the ``GodotEngine.epub`` file in an e-book reader application. :caption: Contributing :name: sec-contributing - contributing/ways_to_contribute + contributing/how_to_contribute contributing/workflow/index contributing/development/index contributing/documentation/index