Django_cn is a web application that allows the students of the Computer Network Laboratory of the National Technical University of Athens to submit their assignments online.
Students can login using their academic credentials. Once logged in, they view a list of the courses they are registered in via moodle. The can choose to view an assigment and/or submit it.
Examiners can view students submissions online or download them as a pdf and grade them. They can also view suggested answers.
Teachers can upload assignment and suggested answers and view all students' grades and submissions.
For a fully functional application you need to have a working moodle installation and read-only permissions to its database. You also need to have an ldap server that will store the users' credentials.
The installation instructions are for unix-systems only
# install python-pip package manager
$ sudo apt-get install python-pip
# instal virualenvwrapper
$ sudo pip install virtualenvwrapper
# create virtualenv
$ mkvirtualenv django_cn
# activate django_cn virtualenv
$ workon django_cn
# install necessary python packages
$ apt-get install python-dev libmysqlclient-dev libldap-dev libsasl2-dev
# go to django_cn folder
$ cd <path-to-app>/django_cn
# install requirements
$ pip install -r requirements.txt
# create database
$ python manage.py syncdb
# migrate database
$ python manage.py migrate
You will be prompt to create a superuser.
The full thesis can be found here (in greek).