-
-
Notifications
You must be signed in to change notification settings - Fork 156
Home
Welcome to the Pygame Community Edition GitHub contributor guides and help wiki pages.
The purpose of these pages is to help contributors and reviewers improve pygame-ce with information on how to compile, create pull requests and review pull requests. It also contains information on how the Pygame Community Edition project is currently governed.
Pygame CE is built from a majority of C code, a smaller amount of python code, and currently a teeny amount of cython code (that we'd like to convert to C code). C code is also what is used to create CPython, the most widely used distribution of python, so, if you've made any contributions to CPython then pygame's C code will be somewhat familiar. Other popular python packages like numpy, pillow and TensorFlow also use the C Extension API of python as it is the main way to squeeze maximum performance while retaining python's trademark user friendliness to the end user.
How to build pygame-ce from source so you can make and test changes you make to the code.
- Compiling on macOS.
- Compiling on Linux.
- Compiling on Windows.
- Advanced compilation guide (for developers)
- Many ways to contribute (docs, tutorials, testing, python code, C code).
- Opening a pull request.
- Opening a great pull request.
- Contribution guidelines
Currently the project has a three tiered membership structure.
New members enter as contributors (appointed by the steering council) and gain voting rights for the steering council elections, the ability to make pygame-ce branches and the power to make meaningful pull request reviews.
Once a contributor has been in good standing and made substantial good quality contributions (including PR reviews) for approximately six months or more they will be considered for appointment to the 'Experienced Reviewers' team by the steering council. All pull requests need one review from an experienced reviewer before they can be merged.
Finally there is the steering council, all contributors get a vote for annual elections to the steering council. The council consists of no less than three members and has responsibility for appointing members to teams, releases of pygame-ce, the next round of steeering council elections and general policy for Pygame Community Edition. You can read more below: