our projects - recent releases

pygame.org welcomes all python game, art, music, sound, video and multimedia projects. If they use pygame or not. Once you finished getting started you could add a new project or collaborate with other people. Or perhaps you're interested in making pygame (the python multimedia library) itself better? First you may need to learn a thing or two about pygame by reading the docs.

google.com/ https://www.google.com, by kevin

https://www.google.com google.com/ [url=https://www.google.com]google.com/[/url]
November 18, 2018

Road Rage 1.1, by OrionDark7

A game about managing Traffic in a city.
November 18, 2018

test 1, by Wyatt

ttttest
November 16, 2018

test 1, by Wyatt

test
November 16, 2018

Hex Kingdom 1.0, by John Doe

A small, 5 minute strategy game.
November 15, 2018

tic tac toe 89, by jacob

fgbhnjmk,l.;'
November 15, 2018

Stopwatch 1, by Troy Dothlin

A simple stopwatch created with pygame.
November 14, 2018

Px Editor 3.0.0, by CMLSC

a pixel art tool
November 13, 2018

Game of Ur 1, by Per

Oldest known board game. 2 500 BC Mesopotomia. You play against the computer. Similar to Ludo. Intended as a minigame inside a larger game, but here a standalone game. This version has very little player test time, feedback is appreciated
November 11, 2018

SleepDungeon 1.0, by Karsten Lehmann

SleepDungeon is a open source game written in Python3 and PyGame. It was created in the year 2018 at a GameJam at the university of Dresden, Germany.
November 11, 2018

Sword Battle 1.5.7, by Anthony

A sword fighting game where you gain fans and earn upgrades as you go on. But dying will make you restart your run.
November 11, 2018

Gim Descent 4.1.0, by James Lecomte

A tactical, creature-killing roguelike
November 10, 2018

jacob 1, by jacob

hi
November 08, 2018

Frogger 1.0, by João Pedro Gubert de Souza

A remake of the game Frogger Arcade Game made in 1981.
November 08, 2018

Ball Sport 0.2a, by Josh Klipstein

2D juggling game made in Python 3.6.3 with Pygame 1.9.4
November 06, 2018

Sword Battle 1.2.5, by Anthony

A sword fighting game where you gain fans and earn upgrades as you go on. But dying will make you restart your run.
November 06, 2018

Star Map 1, by Per

Small game intended to be a puzzle in a larger game. Connect stars on a map to form images.
November 05, 2018

Visit to an exotic holiday destination- Spain https://www.travelbinz.com, by Travel Binz Reviews

Exuberant beaches, vibrant nightlife, mouthwatering cuisines will make your stay in Spain a memorable one. The country has its own rich cultural heritage, and it is considered to be Europe’s most famous getaways.
November 05, 2018

Best Tour Operators – Travel Binz https://www.travelbinz.com, by Travel Binz Reviews

Travel Binz proudly introduces ourselves as one the full-fledged and leading company that offers all sought of travel services. Since its inception in 2007, we have made our clients happy and left a smile on their heart with our prompted and stimulated service at commendable/reasonable prices.
November 05, 2018

Travel Binz Reviews https://www.travelbinz.com/testimonial, by Travel Binz Reviews

We here at Travel Binz India offers hotel reservations, domestic & international holiday packages, flight booking, excursions and adventures in various countries.
November 05, 2018

Hex Kingdom 0.5, by John Doe

A small, 5 minute strategy game.
November 04, 2018

Sword Battle Beta v0.5.3, by Anthony

A sword fighting game where you gain fans and earn upgrades as you go on. But dying will make you restart your run.
November 04, 2018

flint's game of life 1, by Flint Winters

Simulation using the classic cells from Conway's Game of Life, but some cells use different, custom rulesets. Cells with different DNA can also interact with each other in the world.
November 04, 2018

Hex Kingdom 0.1, by John Doe

A small, 5 minute strategy game.
November 03, 2018

Random circles v2, by anand

This is my first game in python called random circles
November 02, 2018

Electronics 3D Models | FlatPyramid 2018, by Chris Harrington

Find 465 Electronics 3D Models. Buy high quality Electronics 3D Models - Available files for download: .MAX, C4D, .OBJ, DXF, FBX, 3DS, CAD, PSD. Money back Guarantee!
November 02, 2018

O² Space Salvage Post-Mortem Update 1, by OrionDark7

To see the description of this update, view https://oriondark7.itch.io/o2/devlog/54434/post-mortem-update
November 01, 2018

Sword Battle Beta v0.4.3, by Anthony

A sword fighting game where you gain fans and earn upgrades as you go on. But dying will make you restart your run.
October 30, 2018

Tetracube Python 3.7.1, by Matthew Zegar

Tetracube is a NES Tetris clone recreated using Python along with Pygame
October 29, 2018

Road Rage 1.0, by OrionDark7

A game about managing Traffic in a city.
October 28, 2018

Sword Battle 0.11.13, by Anthony

A sword fighting game where you gain fans and earn upgrades as you go on. But dying will make you restart your run.
October 25, 2018

Snake 1024 0.3, by Harry Syred

A snake game where u are a red snake trying to eat all the green apples that just pop into existance.
October 21, 2018

snake 1.0, by Felecarp

A Snake game made with PyGame and beautiful images.
October 21, 2018

Snake Classic & Normal V.2, by Sathish kratos

Popular Snake game in My Version.
October 21, 2018

bruh 1.0, by Ethan

the player goes through a series of events as you make decisions that effect the entire game
October 20, 2018

Super Potato Bruh 1.1.0, by CMLSC

a Super Meat Boy-like platformer with Bullet Hell elements
October 20, 2018

news

pygame 2 status

Here are some updates from where we're up to on pygame 2 with SDL2.
  • pygame now compiles with SDL2 from source on at least Mac, Linux, and Windows.
  • SDL2 now does batching with the existing API. Should be in the next release. So no need to integrate SDL_gpu, or to change how we submit surfaces for rendering.
  • Many things are working with SDL2, there are dozens of known issues and test failures however. The main one is color keyed surfaces not working properly. The other big piece of work is getting it to compile on the build bots (travis, appveyor), and making pre releases available.
  • There have been a few more developers contributing (10 in the last month).
  • Work continues on cleanups, making it more developer friendly, and developer out reach. The repo has been cleaned up, removing the clutter, and beginning an internal CAPI refactor. Unit tests have also undergone some cleanups using newer features. python 2.4/2.5/2.6 support has been removed in the code. The contribution guide has been improved. https://www.pygame.org/wiki/Contribute
  • If anyone using pygame in Berlin wants to come along and help talk with people interested in contributing, I am presenting here: https://www.meetup.com/opensourcediversity/events/255369540/
  • We're working toward the 1.9.5 release (the refactor release).
  • There could be 'one more SDL 1.2' release, and we may use that SDL1.2 branch for a 1.9.6 release.
 
Here's the milestone for pygame 2: https://github.com/pygame/pygame/milestone/4
When is pygame 2 done? TLDR; When the pygame API is mostly running in a backwards compatible way on SDL2. When the few parts that are not working are documented as such. When there are binaries available for python 2.7, 3.4, 3.5, 3.6, 3.7 in 32bit/64bit varieties on at least Mac, Linux, Windows.
 
Here's the milestone for pygame 1.9.5 (the refactor release). https://github.com/pygame/pygame/milestone/7
The 1.9.5 release is the 'refactor' release, with the SDL2 branch merged and many cleanups. Being able to compile SDL2 support in is possible from source, but there are known issues with it. Binaries (on pypi and otherwise) should be distributed with SDL 1.2.
 
Thanks to the following people who have been helping out since the last release (sorry if I've missed anyone).

(@alphaCTzo7G) | Amos Bastian (@amosbastian) | Andrey Lopukhov (@andreyx86) | Augusto Noronha (@augusto2112) | (@Bottersnike) | (@Cerealdragon) | (@cmtrapp02) | Daniel Molina (@daniel-molina) | David Caughell (@DavidCaughell) | David L (@dlon) | burmer (@dtschirmer) | René Dudfield (@illume) | (@LambdaGoblin) | Lenard Lindstrom (@llindstrom) | Marius Gedminas (@mgedmin) | (@metulburr) | Dominik George (@Natureshadow) | Nunu-Willump (@Nunu-Willump) | Nik (@nikolas) | Sett (@sw00) |

 
November 05, 2018

Super Potato Bruh released on steam

Congrats to DaFluffyPotato for the release of "Super Potato Bruh" on steam: https://store.steampowered.com/app/951360/

Super Potato Bruh is a difficult platformer that uses some elements of the bullet hell genre to create an intense platforming experience. (And it uses python and pygame :) Also... the source is available on itch.io. (https://cmlsc.itch.io/super-potato-bruh)

October 20, 2018

Josh Bartlett — pygame Artist in Residence

The pygame Artist in Residence grant celebrates the Python arts community and lends a tiny bit of support to someones art practice. Josh Bartlett is the first recipient.

An artist residency usually works something like; a person spends some time in either a gallery making something to present or in a music club doing a weekly spot. The pygame artist in residence will do it in their own space, but be present on the top of the pygame website in the form of a thumbnail and a link to their patreon/blog/artist statement/website/whatever.

Josh Bartlett who has shared with us some things of what he's been up to. Please see the pygame artist in residence profile page for more info.

Also, Josh is blogging, so you can read about him and some updates on his work there.

ps. Thank you to everyone who applied, and those who helped with selection. Hopefully the next one will go more smoothly as the process is improved.

October 11, 2018

Announcing the pygame artist in residence

An artist residency usually works something like; a person spends some time in either a gallery making something to present or in a music club doing a weekly spot. The pygame artist in residence will do it in their own space, but be present on the top of the pygame website in the form of a thumbnail and a link to their patreon/blog/artist statement/website/whatever.

"pygame artist in residence" grant — For someone using python or pygame in their arts practice. Email: email-redacted-because-spam Applications or nominations close: September 15th. Announced: October 1st. Amount: €512 paid by paypal.

Full details at: http://renesd.blogspot.com/2018/08/pygame-artist-in-residence-grant.html

August 31, 2018

DUGA 1.0, the first person shooter is out.

For a couple of years Maxwell Salmon has been working on a game and making a raycaster engine.
An old style game, done in contemporary times.
And it's been made with python and pygame!! An amazing accomplishment.
 
Support Maxwell, and python+pygame gaming...
Play the game here https://maxwellsalmon.itch.io/duga

August 27, 2018

pygame badge

SMA-DEV has made a badge for us to use (now all we need is a pygame poem).



https://www.pygame.org/ftp/pygame-badge-SMA.png (800x512)
https://www.pygame.org/ftp/pygame-badge-SMA-unscaled.png (200x128)
The badge uses the wtfpl license.

ps. An early Super Magic Adventure demo is out and available at https://supermagicadventure.itch.io/demo

August 17, 2018

Easier than ever to contribute to pygame

We have a new page on how to contribute to pygame. It's still being improved, but already there is a step by step guide on how to write your first contribution to an Open Source project. And you don't even need to know assembly language to be able to do it! We have made a list of "good first issue". Which are issues which should be pretty easy to help out with just a bit of python knowledge.

Additionally we now have C API docs which should be helpful for those wanting to hack on C code.

So, if you want to help out, please pop into our web based chatroom(discord) in the "contributing" channel. Or take a look at our contribute page for notes on how to get started.

Learn python by contributing to pygame

The idea is that people can learn by contributing to a Free Libre Open Source project.

Why? (teaching by helping people contribute to FLOSS projects.)

  • Because you don't learn karate from a book.
  • Builds social connections and skills.
  • Portfolio, and evidence of talent.

Why pygame? (rather than some other project)

  • It's sort of fun compared to some topics (better than watching paint dry at least).
  • Because it's sort of well known project (millions of users). ... with almost zero full time or even part time developers (that's why it's called pygame zero).
  • Because we have learning resources and easy issues prepared.
August 15, 2018

pygame 1.9.4 released

pygame 1.9.4
pygame 1.9.4 has been released into the wild!

TLDR; Some highlights.

  • python 3.7 support.
  • beta pypy support. See Are we pypy yet?.
  • pygame.draw fixes
  • pygame.math is not experimental anymore. Speedups and bugfixes.
  • Debian, Mac homebrew, mac virtualenv, manylinux and other platform fixes.
  • documentation fixes, jedi support for type ahead in editors like VSCode and VIM.
  • Surface.blits for blitting many surfaces at once more quickly.

Thanks

A very special thanks to the people who have volunteered commits to pygame since the last release. In alphabetical order...
Adam Di Carlo (@adicarlo) | Christian Bender (@christianbender) | Don Kirkby (@donkirkby) | endolith (@endolith) | hjpotter92 (@hjpotter92) | Ian Mallett (@imallett) | Lenard Lindstrom (@llindstrom) | Mathias Weber (@mweb) | Matti Picus (@mattip) | Nicholas Tollervey (@ntoll) | (@orangudan) | Raymon Skjørten Hansen (@raymonshansen) | René Dudfield (@illume) | Stefan Bethge (@kjyv) | Stuart Axon (@stuaxo) | Thomas Kluyver (@takluyver) | Tobias Persson (@Anisa)

I'm probably missing some people, and also missing some people who contributed in other ways.
For example, in discussions, issue reports, helping out on the wiki, the website, and for helping others
in the community, and providing good vibes. So whilst the commits are easy to use to make a list of people to thank, it's not inclusive of everyone who deserves thanks.

More details.

#451 #460 #467 #468 #469 #470
#444 link to help pages when compile fails.
#443 In set_error get_error tests ignore first error. Could be anything.
#442 Freetype requires pkg-config instead of freetype-config now.
#439 Surface.blits
#435 Adding pypy builds for Mac on travis.
#432 Appveyor pypy and pypy3 windows 32bit.
#431 Implement object alloc caching for rect.c to improve on pypy.
#427 PixelArray.close(), with PixelArray(surf) as px, context manager.
#426 Skip tests that rely on arrinter and pythonapi on pypy.
#420 pypy didn't like tp_dictoffset hack in events. Make our own setter, getter.
#418 draw.aaline should work with ARGB surfaces (like on mac).
#416 Vector cleanup
#415 So virtualenv gets a focused window on Mac too.
#414 Mac Travis homebrew fix
#413 Jedi confused by pygame imports. Make it happy.
#408 pygame.transform.threshold tests, keyword arguments, docs.
#403 pygame.math.Vector2/3 not experimental
#398 Clean up _camera_vidcapture.py unused code, and document a bit.
#394 Add pitch bend to MIDI library
#392 Add pypy builder to travis ci, and allow it to fail.
#391 ppc64le and other Debian fixes
#389 pygame.draw.circle with a thickness had a weird moiré pattern.
#387 test python 3.7 on travis CI.
#386 python 3.7 fixes.
#384 pygame.display doc fixes.
#381 import rect.inflate docs.
#363 Fix several typos, and improve grammar in the introduction.
#361 Add unit test for some key functions.
#360 update math.c for pypy.
#357 add UYVY support for better linux camera support.
#356 Fix aaellipse artifacts
703350f Update Rect slicing for Python 3
6d0e97a bug fix for freetype.Font.render_to()
#78 Add environment PYGAME_EXTRA_BASE to add an extra base directory to the start of the search path.
#77 Build alsa libs ourselves for manylinux builds.
#76 Docs fixup.
July 19, 2018

pyglet 1.3.2 released


pyglet 1.3.2 has been released. Compatibility with Python 3.7 has been added.
April 13, 2018

pyweek 25

pyweek 25 is on soon too.
April 05, 2018

tweets

reddit

videos

About

Hello internet traveller,

More silly nonsense about Pygame

  • Silliness built in. Pygame is meant to make software things fun. New silliness is added every 3.1415 seconds.

  • Does not require OpenGL. With many people having broken OpenGL setups, requiring OpenGL exclusively will cut into your user base significantly. Pygame uses either opengl, directx, windib, X11, linux frame buffer, and many other different backends... including an ASCII art backend! OpenGL is often broken on linux systems, and also on windows systems - which is why professional games use multiple backends.

  • Multi core CPUs can be used easily. With dual core CPUs common, and 8 core CPUs cheaply available on desktop systems, making use of multi core CPUs allows you to do more in your game. Selected pygame functions release the dreaded python GIL, which is something you can do from C code.

  • Uses optimized C, and Assembly code for core functions. C code is often 10-20 times faster than python code, and assembly code can easily be 100x or more times faster than python code.

  • Comes with many Operating systems. Just an apt-get, emerge, pkg_add, or yast install away.  No need to mess with installing it outside of your operating systems package manager. Comes with binary installers (and uninstallers) for Windows or MacOS X.

  • Truly portable. Supports Linux (pygame comes with most mainstream linux distributions), Windows (95,98,me,2000,XP,vista, 64bit windows etc), Windows CE, BeOS, MacOS, Mac OS X, FreeBSD, NetBSD, OpenBSD, BSD/OS, Solaris, IRIX, and QNX. The code contains support for AmigaOS, Dreamcast, Atari, AIX, OSF/Tru64, RISC OS, SymbianOS, and OS/2, but these are not officially supported. You can use it on hand held devices from nokia, game consoles like gp2x, the One Laptop Per Child (OLPC), and the Orange Pi.

  • It's Simple and easy to use. Kids and adults make games with pygame. Before the Raspberry Pi, the microbit, or the OLPC, Pygame has been taught in courses to young kids, and college students. It's also used by people who first programmed in z80 assembler, or c64 basic, and for Indie game productions.

  • Does not require a GUI to use all functions. You can use pygame without a monitor - like if you want to use it just to process images, get joystick input, or play sounds.

  • Small amount of code. It does not have hundreds of thousands of lines of code for things you won't use anyway. The core is kept simple, and extra things like GUI libraries, and effects are developed separately outside of pygame.

  • It's not the best game library. It's not even the second best. But we think it's sort of ok.

tutorials

The PYGAME Documentation page has a number of tutorials. A Newbie Guide to pygame is very good.

There are lots of examples that come with pygame. See https://github.com/pygame/pygame/tree/master/examples. They should be installed, and are runnable like:

python -m pygame.examples.aliens

Below are unofficial tutorials and guides. Anything with wrong install instructions is not allowed.

General Tutorials

Pygame Tutorials on Specific Topics

Non-English Resources

Spanish

Brazilian Portuguese

Italian

  • All Pygame tutorials Questa � una traduzione non ufficiale del tutorial su pygame di Pete Shinners, curata dagli utenti di python-it.

Français (french)

  • Sur Wikibooks, Traduction compl�te des tutoriels officiels de Pete Shinners.

Greek

Polish

CookBook

def show_cook_book_love(screen):
    txt = "I love the CookBook!"
    f = SysFont("Arial", 12)
    s = f.render(txt, 1, (0,0,0))
    screen.blit(s, (0,0))

Posting A Recipe:

  • Please start a new page for each recipe.
  • Use the <pre><code>YOUR CODE</code></pre> tags to put in code.(View source of some other pages to see how it is done.)
  • Except where otherwise noted, recipes posted in the pygame cookbook are in public domain.
  • Tabs are lost when posting, so convert tabs to spaces first if you use them.

Generic recipes

Profiling
RunningInCorrectDirectory
LinearInterpolator
SmoothInterpolator
BoundingBox
2DVectorClass
3DVectorClass
CommandDispatch (A pattern for building GUIs)
2DGeometryEngine
QuadTree
MemoizingDecorator (Another lazy resource loader)
SignalSlot (A signal/slot implementation)
Interpolator (An improved interpolator)
BezierCurve
RGBColorConversion
CalculateDist
SpatialHashMap
ConstantGameSpeed

PyGame recipes

LazyImageLoading
SimpleFontManager
TTFToBitmapConverter
toggle_fullscreen
Joystick_analyzer
ImagePacker
SmallerRectForSpriteCollision
GradientCode
ConchMusicSoundToolkit
FastPixelPerfect
SettingWindowPosition
DummyVideoDriver
WindowResizing
TextWrapping
CairoPygame
Load_32-bit_BMP_with_Alpha
HeadlessNoWindowsNeeded (Use pygame without using creating a window)
SubtractRects
ShadowEffects (Using arrays)
MatplotlibPygame
IntersectingLineDetection
MmapSurfaces
WxPython
Pygame2exe
InputWrapper
RotateCenter
MidiScheduler
SpatialHash_for_Pygame
Spritesheet
Tint
SoundGeneration
DrawWaveform

PyOpenGL recipes

SimpleOpenGL2dClasses
OBJFileLoader
GLLight
GLSLExample
GLSL_ARB_Example
TextureCoordinateArithmetic
MakeOpenglDrawIn2D
CrossPlatformTextOpengl

Resources

Cookbook Code

3D Models

Tutorials

Textures

Music

Royalty Free Music

Sound Effects

Royalty-Free Sound Effects

Fonts

Stock Photos

Clip Art

Free Game Engines

Pixel Art

Other Resource lists

Help (irc, lists)

Discord chat, pygame server

If you want to discus projects you're working on, there is a new chat server on 'Discord': https://discord.gg/r8yreB6, a chat service very popular in other game dev communities.

Mailing List

Pygame maintains an active mailing list. You can email the list at [email protected]

If you do not have a mail client configured on your computer you can subscribe to the mailing list by sending a plain-text e-mail to [email protected] Leave the subject field blank and in the body put only "subscribe pygame-users" (without the quotes).

You will receive an authentication response. Follow the directions in that e-mail to complete the subscription process.

Forums and Newsgroups

GMane, and google groups offer web based, and newsgroup access to the pygame mailing list. So you can talk with a forum-like interface to the pygame mailing list.

If you prefer newsgroups, GMane is running a newsgroup gateway at gmane.comp.python.pygame.

If you have a google account, and like google groups, there is a mailing list mirror at google groups mirror. To post, you must subscribe to the real mailing list first. It started mirroring the mailing list in 2008/04/28.

For a forum-like interface, you can use Nabble which started mirroring on 2012/05/21.

Mailing list archives are hosted by Gmane and Seul.org.

irc

pygame IRC channel. irc.freenode.net 6667 #pygame

questions and answers

Hacking

Notes for hacking, developing, and modifying pygame.

Building pygame

See the wiki page: Compilation to figure out how to compile pygame on different platforms.

Buildbots, pygame compiled on every change

There is a pygame github page. Development now happens on github.

The set up more buildbots issue tracked developments in the buildbots.

Linux manylinux builds

Manylinux builds are binary files for pip which should work on many versions of linux. See in the pygame repo manylinux-build/README.rst

Generating docs

python setup.py docs

This runs buildconfig/makeref.py which runs Sphinx to generate HTML docs and src_c/docs/{module}_doc.h C headers from reStructuredText source.

The reStructuredText .rst files are stored in the pygame/docs/reST/ref/ (reference manual) and docs/reST/tut/(tutorials) directories.

An online reStructuredText primer can be found on the Python website site.

Sphinx specific markup is described in theSphinx Documentation.

The Python Sphinx package itself depends on Docutils, Jinja2, and Pygments.

You need a recent sphinx to build the pygame docs (1.7 at time of writing).
pip install sphinx --user

Running tests

To run the tests from the test sub-directory in the pygame distribution:

python test/__main__.py

To run the tests from the installed pygame.tests module:

python -m pygame.tests

In either case the --help command line option will give usage instructions.

Code style

Try and follow the code style of the particular file you are editing.

Use 4 spaces instead of tabs, and Pep-8 generally.  Make sure your editor doesn't insert tabs.

Try to keep things under 80 characters wide.

Try not to mix in white space commits with other code commits.  This makes reading diffs easier if you separate the whitespace updates from the actual changes.

For C code, we use clang-format. There is a config in src_c/.clang-format which tries to use a pep-7 style.

Writing tests.

Tests are in the test/ directory.

Please see test/README.txt (in the pygame repo) for more of a description on the tests, and the testing framework.

A naming convention is used for all tests. So from the name of a module, class, method, or function, you can find the tests for it.

Each module has a test file.  eg. for pygame.surface there is test/surface_test.py

In that file there are methods for each of the classes, functions and methods. So Surface.blit has a 'test_blit' method.  There can be multiple test methods for each method. eg. 'test_blit_keyword_args' in surface_test.py one of a few tests Surface.blit.  Add extra words at the end of the method name to make multiple tests for the same method.

Methods named with todo at the front "todo_blit" are methods that need to be written. Or finished. By default all of the todo tests are skipped by the test runner.  You can however, make the todo_ tests fail - to see how many more tests need to be finished.

Tests can use tags in order to organise them. There are optionally [modulename]_tags.py files for each module. A test/surface_tags.py file is used to specify tags for the pygame.surface module. You can use tags to skip tests on different platforms, or to choose different tests to exclude or run.

There are some test related tools + code in test/util/ .

To see if anything in a module is not documented... you can use: python compare_docs.py pygame.sprite sprite.doc

To generate some test stubs for your unittests from an existing file... you can do: python gen_stubs.py midi

Submitting changes to github

See http://www.contribution-guide.org/. If you are a member of the pygame repo on github you can start a new branch like this:
git clone git@github.com:pygame/pygame.git
cd pygame
git checkout -b my-fixes-branch
# Edit your changes here.
git commit .
git push --set-upstream origin my-fixes-branch
Then go to the web https://github.com/pygame/pygame to create a pull request. Add a couple of reviewers who you think might want to review the code. If you are not part of the github pygame organization, then fork pygame with github, and then when you're ready, send us a pull request.

issues

A heading



the content

downloads

download.shtml

developers

A heading



the content

project comments

meetups

awesome sauce

spotlighted projects

Mastermind Networking Lib 4.2.0, by Ian Mallett

A networking lib designed to be simple to use.
October 17, 2018

Albow 2.2, by Gregory Ewing

A Little Bit of Widgetry for PyGame
January 29, 2014

glLib Reloaded 0.5.9, by Ian Mallett

OpenGL Library + Shader OpenGL Library + TONS MORE STUFF!
January 26, 2014

Program Arcade Games With Python and Pygame 1, by Paul Vincent Craven

Learn to program using Python and Pygame!
July 19, 2013

QANAT 0.7, by Paul Paterson

A shoot-em-up inspired by the classic Galaxians game. Repel waves of invaders using your gun turret. Manage the temperature of the turret to avoid overheating.
April 19, 2013

SGC 0.2.1, by Sam Bull

A GUI toolkit for Pygame, to ease game development for Pygame developers. Works with no code change with a normal Pygame display or with an OpenGL display. This is a lightweight toolkit, with focus on the attention to detail. It is also customisable, allowing developers to theme the widgets to match their game.
March 25, 2013

SubTerrex 0.3.1, by Paul Paterson

Explore deep subterranean caves using only your trusty ropes and flares.
September 02, 2012

Making Games with Python & Pygame 1, by Al Sweigart

A free book covering the Pygame library for beginner and intermediate Python programmers. Includes the source for 11 game clones including Tetris, Bejewled, Othello, Connect Four, and others.
July 03, 2012

Life as a Bit DLX-v1.01, by Sean J McKiernan

A full-featured cellular automata simulator. The focus is on "Conway's Game of Life." With the 'Rule Panel' you can also explore other rule combinations.
December 26, 2011

Toonloop 1.1.3, by Alexandre Quessy

Toonloop is a live stop motion animation software.
December 31, 2009

Arcade Tonk Tanks 0.0.6, by Koen Lefever

Just use the cursor keys and the space bar to shoot the other tanks.
December 28, 2009

Foodforce2 1.0, by Deepank Gupta

Food Force 2, based on Food Force, is being developed as free software. It is cross-platform as it is written in the Python programming language, and runs on platforms including the One Laptop Per Child XO and the Sugar desktop environment. Food Force 2 is currently in beta, and available for download on Linux and Windows platforms.
December 06, 2009

PixelPaint F-b, by Pie

A simple paint program.
October 06, 2009

PaintBrush 1.1, by John Eriksson

A public domain class that can be used in drawing applications or games. Two demos included.
September 16, 2009

Ardentryst 1.71-testing, by Jordan Trudgett

Ardentryst is a free, open-source, cross-platform action/RPG sidescrolling game that is fun for all ages. Follow hero Pyralis, a warrior with fire magic, and heroine Nyx, an ice mage, on a quest through a castle, forests and snowy mountains to reclaim peace in the realm of Ardentryst.
August 12, 2009

Plague 3.38, by benedict carter

Plague is a real-time top down â??rogue-likeâ? arena shooter pitting humans against the zombie horde, inspired by the games Syndicate, XCOM and Gauntlet. Currently under development, Plague already features procedural level generation, cellular automata modeling for physical effects, a 2D physics engine, AI and line of sight vision for every â??sentientâ? game entity, multiple weapons and a whole heap more, all running in real-time.
August 12, 2009

555-BOOM! 0.6.1, by Gregory Ewing

Puzzle game and electromechanical sandbox. Based on my PyWeek 5 competition entry.
February 02, 2009

Disk Field 1.01, by Jeremy

Navigate the disk to the end point.
September 25, 2007

Woody Tigerbaum's Interplanetary Package Delivery 0.92, by Dave LeCompte

Deliver packages in space with the power of interplanetary slingshots.
July 10, 2007

Trip on the Funny Boat 1.5, by Pekka Kujansuu

A side scrolling shooter game starring a steamboat on the sea.
April 23, 2007

Barbie Seahorse Adventures 1.0, by Phil Hassey

Barbie the Seahorse wants to go to the moon! Let the good times roll with this swell side-scroller. Won teams category in pyweek #4!
April 22, 2007

Bouncy the Hungry Rabbit post-r4, by Richard Jones

You play Bouncy the Hungry Rabbit. You're in a garden with yummy veggies and a farmer who's not keen on you eating them. You can hide (and move around) under the ground.
October 05, 2006

Typus Pocus Pyweek3, by Team PyAr

A typing game, with a twist.
October 02, 2006

Colonel Wiljafjord and the Tarbukas Tyranny contest, by Phil Hassey

An adventure game tribute to some of the old LucasArts and Sierra classics -- Monkey Island and Space Quest. Made for pyweek #3.
September 25, 2006

Nelly's Rooftop Garden 1.0, by Alex Holkner

A physics-based puzzle game written for PyWeek 2.
April 22, 2006

20,000 Light Years Into Space 1.2, by Jack Whitham

"20,000 Light Years Into Space" is a single-player real-time strategy game with a "Steampunk" sci-fi theme.
April 17, 2006

GalaxyMage 0.3.0, by Colin McMillen

GalaxyMage is a free, open-source tactical/strategic RPG for Windows, Linux, and Macintosh.
March 26, 2006

Angry, Drunken Dwarves 1.0.1, by Joe Wreschnig

In Angry, Drunken Dwarves, you are an angry, drunken dwarf. Why are you so angry? Who knows. But you've decided to take your aggression out on other dwarves, by dropping gems on their heads. Lots of gems.
January 12, 2006

The Witch's Yarn 1.3, by Keith Nemitz

Graphical Interactive Fiction Stage director metaphor UI. Sit-com inspired interactive comic book as theater.
September 16, 2005

Dynamite 1.1, by Phil Hassey

The evil potentate is ruining everyone's lives! Use the power of dynamite to destroy his strongholds.
September 15, 2005

Quido: Failed Experiment 1.1, by Simon Wittber

This was TeamXerian's entry in pyweek 2005.
September 09, 2005

Pylonoid 1.2, by Sami Hangaslammi

Puzzle game where you direct a stream of electricity with different kinds of power pylons.
September 06, 2005

OUTERSPACE .5.13, by Administrator

A massive multiplayer online strategy game. The game itself supports internal message boards, self updating clients, and it doesn't stop there. An amazing accomplishment.
December 05, 2002