The Khan Academy platform is Open Source and you can setup your own custom installation, or contribute to Khan Academy platform development by setting up your very own development environment.

I have setup the Khan Academy platform development environment on Debian 6 and Ubuntu 11.04 so far.

I'll concentrate on Debian 6.

First setup a new install of Debian 6, or use an existing install. There are a few software requirements.

If you don't already have them install the basics:

apt-get install build-essential unzip python 2.5 python-setuptools python2.6-dev python-dulwich

You need mecurial 1.8 so add the backports repository. Add

deb http://backports.debian.org/debian-backports squeeze-backports main
to /etc/apt/sources.list and run
apt-get update
Now install mecurial 1.8
apt-get install -t squeeze-backports mercurial
Now install hg-git using easy_install for python
easy_intsall hg-git

Once you have all the basic requirements you'll need the Google Appengine SDK for Python. Get the latest version here: http://code.google.com/appengine/downloads.html

The latest as of this writing is 1.6.1.

wget http://googleappengine.googlecode.com/files/google_appengine_1.6.1.zip
unzip google_appengine_1.6.1.zip

Now get the Khan Academy code

hg clone https://khanacademy.kilnhg.com/Repo/Website/Group/stable

This will put the code in a directory called stable, rename it if you like so you can find it easily.

Edit the app.yaml file and change application: to your app name. Change version: to 1. You can use any short name for the application name. If you have setup an app on Google Appengine already you'll use that name, but you can run the platform locally with any short name.

Now you can startup the python webserver replace APP_PATH with the path to the Khan Academy code (named stable if you didn't change it).

python2.5 google_appengine/google/appengine/tools/dev_appserver.py KA_CODE_PATH

You can now load the sample data so you have something to look at:

cd KA_CODE_PATH/sample_data
python2.5 sample_data.py -a PATH_TO_GOOGLE_APP_ENGINE/appcfg.py -ulocalhost:8080 -a dev~APPNAME
This command must be run from the sample_data directory under the KA code base. NOTE the appname in app.yaml needs to be preceeded by dev~ using the latest version of the SDK.

This will take a while to run. After that try visiting http://localhost:8080/ to see you new Khan Academy development installation.

posted in

first time running on debian

hi, i followed this and installed KA code and GAE.

When I first run this, i get error.. I guess I need to put google app engine in system path, isn't it? how do i do that?

$ python google_appengine/google/appengine/tools/dev_appserver.py khancode


Traceback (most recent call last):
  File "google_appengine/google/appengine/tools/dev_appserver.py", line 39, in <module>
    from google.appengine.tools import os_compat
ImportError: No module named google.appengine.tools

by sunil m on 02/04/12

Add comment