Earn achievements using Github
Branch: dev
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.


Git Achievements

Using Git Achievements

  • Head to www.git-achievements.com and register through OAuth.
  • Add www.git-achievements.com/services/hooks/web as a webhook in your repository
  • Done

Development Setup

  1. Set up a virtual environment for the project.
  2. Enable the virtual environment and run pip install -r requirements/dev.txt from the project directory.
  3. Run python manage.py syncdb to initialize the database.
  4. Run python manage.py migrate to forward the database.
  5. Run python manage.py add_sample_data to load the initial data.
  6. Run python manage.py runserver to launch the server.
  7. Add social auth key/secret pair if you want to login as your Github profile, otherwise you can login via the admin page /admin, then navigate to the root.
  8. Set up a watcher to convert all SCSS files to CSS files.
  9. Download coffee and set it as a watcher coffee -cw app/**/*.coffee to compile all coffeescript that you may make changes to.

Getting set up (Production or Team Server)

The following two resources provide excellent information on how to get up and running with your Django application:

Besides those two guides, if you're familiar with setting up a Django application on your server, the steps to getting your own local instance up and running aren't that bad:

  1. Set up a virtual environment for the project.
  2. Run pip install -r requirements/web.txt in the virtual environment to install the web requirements
  3. You need to have psycopg2, python-dev and nginx installed which you should have from prior steps (if on Mac, you can replace sudo apt-get install with brew install using brew).
  4. Generate a secret key/id pair by registering a new application on Github.
  5. Copy the samples/settings/custom.py settings file to gitachievements/settings/custom.py and fill it in the with the relevant information you obtained from the above steps.
  6. Run python manage.py syncdb to initialize the database.
  7. Run python manage.py migrate to migrate forward the database.
  8. If you want to have initial data, then run python manage.py add_sample_data as well.
  9. You will need coffee and sass to compile the .coffeescript and .scss, you can install coffeescript via npm and sass via gem
  10. A convenience script in included in samples/bin called gunicorn_start, you can fill that in and give it as passenger's command.


Contributing to Git Achievements is simple; fork the repository, make your changes, and submit a pull request. To help your pull request make it easily into the repository, add tests, describe in full what issue your pull request addresses, and list the major changes. In addition, we use the following coding style:

  • CoffeeScript is indented with 4 spaces as opposed to the traditional 2.
  • Camel-casing for CoffeeScript.
  • Underscores for function names in Python (e.g. get_last_object instead of getLastObject or getlastobject)
  • Avoid JavaScript if at all possible, instead favour CoffeeScript.
  • Avoid CSS instead write a SCSS file and include as a mixin (styles should be as specific as possible unless intended to be global).


Ford P, hkpeprah - Code + Design
Nicholas Terwoord, nt3rp - Idea
Brian L, 1337 - Code + Idea


GPL v2