Skip to content
An experimental PyGame framework (of sorts...)
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

PyGame Objects

Want a sample on how to work with this framework? Check out the docs in the wiki, particularly the Walkthrough

The most awesome framework for PyGame you will ever encounter! Build Status Coverage Status

But it's not there yet. Right now, it's just a simple abstraction for some commmon code patterns I find while using PyGame.

Built on: see .travis.yml as well as requirements.txt. Wonder why, after all these years, PyGame is still not reachable via pip.

Yep. I'm using Python 2.x because I can't get Python 3 to work with PyGame in Ubuntu.


Aside from .travis.yml, the Dockerfile is provided for development. You can also pull the image via

docker run skytreader/pygame-objects:latest

At this point, you only have the image. To develop and run games with it, you should use the provided duckrunner script. It takes the package path to the script that invokes your game loop. For example, to run the included snake game, call duckrunner

Current Status

Right now, I'm working on adding extra game-making functionalities; stuff that will maybe come useful if you do an RPG, platformer, arcade, etc., type of game. I'm also working on adding new native drawing functionalities.

File Organization

components houses the main framework. sample_sprites contains the sprites I used for the test and demo files. tests contains, well, tests.

Since I tried to follow PEP 328, it may not be that straightforward to run the tests. For convenience, navigate to the runscripts directory, pick the test (as directories) you would like to run, and execute the runscripts from there.

The tests were written after every feature I finished. The tests are a mix of demos and unit tests. Every now and then, I also write some mini-games to compile demonstrations of some feature I'm working on.

Git Organization

Documentation is at the wiki. My todo list I made as issues. I am currently working to make the documentation comprehensive (no more peeking at the framework code!). However, something I was not able to forsee is that, the documentation for Milestone 1 and for the code at the repo head has been mixed at the wiki. Fortunately, they are not yet that different from each other and when and where they differ, it is easy to note. In the near future, I plan to include markdown files of the docs along with the code.


All code in master (except when noted) are licensed under MIT.

All sprites under sample_sprites/tiles are licensed under a Creative Commons Attribution-ShareAlike 4.0 license.

You can’t perform that action at this time.