Welcome hackeratti! So you have got something you would like to see in pyoauth? Whee. This document will help you get started.

Important URLs

pyoauth uses git to track code history and hosts its code repository at github. The issue tracker is where you can file bug reports and request features or enhancements to pyoauth.

OAuth Test server information for testing clients

Sandbox URL: Username: pyoauth Password (Guard Kitten): Kitty-Agent "Able"


Request token URL: User authorization URL: Access token URL:

Two-legged resource URL: Three-legged resource URL:

Consumer keys:

Consumer key: ac19e45c6b01a767 Consumer secret: 59806917a29a94ee77190ec06c50

Nonce checking is enabled.

Before you start

Ensure your system has the following programs and libraries installed before beginning to hack:

  1. Python
  2. git
  3. ssh

Setting up the Work Environment

pyoauth makes extensive use of zc.buildout to set up its work environment. You should get familiar with it.

Steps to setting up a clean environment:

  1. Fork the code repository into your github account. Let us call you hackeratti. That is your name innit? Replace hackeratti with your own username below if it isn’t.

  2. Clone your fork and setup your environment:

    $ git clone --recursive
    $ cd pyoauth
    $ python --distribute
    $ bin/buildout


Re-run bin/buildout every time you make a change to the buildout.cfg file.

That’s it with the setup. Now you’re ready to hack on pyoauth.

Enabling Continuous Integration

The repository checkout contains a script called which you should run prior to making changes. It will detect changes to Python source code or restructuredText documentation files anywhere in the directory tree and rebuild sphinx documentation, run all tests using nose, and generate coverage reports.

Start it by issuing this command in the pyoauth directory checked out earlier:

$ tools/

Happy hacking!

Fork me on GitHub