Skip to content
Branch: master
Go to file

Latest commit


Failed to load latest commit information.
Latest commit message
Commit time


Colorful sockets.

What is this?

PRIMARY is a multi-platform, multi-player, Facebook-integrated arcade game. Players sign in with their Facebook accounts and then select among random photos of their opponent to extract the primary colors from those images. These color levels determine the quantity and speed of the construction of that player’s defensive structures (walls) and their offensive projectiles (balls). The objective of the game is to score as many points as possible during the 50-second round by flinging balls across the opponents screen. Walls and balls can come in each of the three primary RGB colors (red, green, and blue), and interact with each other based on these colors. For example, balls will pass through walls of the game color, but will by deflected by walls after them in RGB order. All of the specific combinations are enumerated in the included interactive tutorial.

How to use

PRIMARY runs on Python 3.4+, and lists and manages its specific dependencies using the Pip-standard requirements.txt. Additionally, a Heroku-compatible Foreman profile is included in this archive.

To get started, first install the project requirements. It is highly suggested that you create a new VirtualEnv sandbox for use with PRIMARY, as its dependencies are bleeding-edge, and it requires the very latest stable major release of Python (3.4). Setting up VirtualEnv is outside the scope of these instructions, but Google is your friend :)

Once you have a VirtualEnv, use pip to install the dependencies:

$ pip install -r requirements.txt

Once the dependencies have been downloaded and installed, run PRIMARY:

$ python

Alternatively, for a Heroku-compatible environment:

$ foreman start

Additional logging can be enabled using standard Tornado command-line options:

$ python --logging=debug

Finally, PRIMARY can be made to run on any port its host process has permission to bind to by setting the $PORT environment variable.


🎨 Colorful sockets.



No releases published
You can’t perform that action at this time.