Git Product home page Git Product logo

lernanta's Introduction

Lernanta

Lernanta is the new platform for P2PU. We are building on the codebase from Batucada, a rewrite of drumbeat.org 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] https://github.com/p2pu/lernanta/wiki [1] http://wiki.p2pu.org/w/page/31978748/Development-and-tech-team [2] http://wiki.p2pu.org

Setting up a local development environment in Ubuntu (Please note that your system most be updated before following these instructions.)

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-core
sudo apt-get install libxml2-dev
sudo apt-get install libxslt-dev
sudo apt-get install mysql-client
sudo apt-get install mysql-server
sudo apt-get install libmysqlclient-dev
sudo apt-get install python-dev
sudo apt-get install python-setuptools

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 [email protected]:<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
sudo 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
export PIP_VIRTUALENV_BASE=$WORKON_HOME
export PIP_RESPECT_VIRTUALENV=true
source /usr/local/bin/virtualenvwrapper.sh

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:

./sh/rmpyc

If the mysql database doesn't exist yet, create it. You need to create the user you'll use. You will use the database name, user, and password in the next file (settings_local.py)

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

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

cp settings_local.dist.py settings_local.py

If you not installed a local version of mysql, you will need to do so now.

Next, sync the database and run migrations.

./sh/syncdb

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 "=": http://www.flickr.com/photos/digifoo/5593967846/).

python manage.py runserver

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

lernanta's People

Contributors

andrewhenderson avatar benrito avatar brianloveswords avatar cillian avatar deimidis avatar foxtrotcharlie avatar houshuang avatar jacojoubert avatar jessykate avatar jledbetter avatar johndbritton avatar jtatum avatar juliakm avatar laurahilliger avatar lovett avatar palbakulich avatar paulosman avatar pforpain avatar rossbruniges avatar sorratheorc avatar theinterned avatar vtamara avatar walkah avatar zarrabeitia avatar zuzelvp avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.