Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Localization in spanish of lernanta and ensuring it runs on OpenBSD - adJ with PostgreSQL
JavaScript Python PHP
Pull request Compare This branch is 4084 commits behind p2pu:master.

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.



Lernanta is the new platform for P2PU. We are building on the codebase from Batucada, a rewrite of by Mozilla.

Get Involved

To help out with Lernanta, join the P2PU dev mailing list and introduce yourself. We're currently looking for help from Django / Python and front-end (HTML, CSS, Javascript) developers.

Interested in getting involved in Lernanta code development? Check out the development wiki [0] for more info! For a broader view on the development and tech team at P2PU, check out the P2PU Development and Tech team [1] page on the P2PU wiki [2] .

[0] [1] [2]

Setting up a local development environment in Ubuntu

You will need to configure git and upload your SSH keys to github

You need a few libraries and can grab them with this command:

sudo apt-get install git libxml2-dev libxslt-dev mysql-client mysql-server libmysqlclient-dev python-dev

To obtain the lernanta's source code that you will be modifying, first fork the repository on the github website and then clone it by running:

git clone<your github username>/lernanta.git

Next, you'll need to install virtualenv and pip if you don't already have them. Using virtualenvwrapper is also recommended.

sudo easy_install virtualenv
sudo easy_install pip
pip install virtualenvwrapper

Be sure to configure your shell so that pip knows where to find your virtual environments:

# in .bashrc or .bash_profile
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/

Once installed, create your virtual environment for lernanta and install the dependencies. There's a chance that packages listed in requirements/compiled.txt won't install cleanly if your system is missing some key development libraries. For example, lxml requires libxml2-dev and libxslt-dev. These should be available from your system's package manager.

cd lernanta
mkvirtualenv --no-site-packages lernanta
workon lernanta
pip install -r requirements/compiled.txt
pip install -r requirements/prod.txt
pip install -r requirements/dev.txt

To be extra sure you're working from a clean slate, you might find it helps to delete .pyc files:


If the mysql database doesn't exist yet, create it. You will use the database name, user, and password in the next file (

mysqladmin -u <user> -p create <database name>

Create a based on the template provided in the checkout. Edit the database parameters as needed


If you have yet to get a local version of mysql running you will want to do so now.

Next, sync the database and run migrations.

python syncdb --noinput --migrate

Finally, start the development server to take it for a spin. You can register a new account and look in the terminal window where the server is running to find the activation link (If you get 404 error for that url, remove the "=":

python runserver

Once you have your development environment running, you can make changes or get the latest from github. See the wiki for more information:

Something went wrong with that request. Please try again.