Online Learning Management System based on Kohana Framework
PHP JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
media add code for sending manual notices in the form of email Dec 23, 2011
modules use alternate method templatedmail instead of decoratedmail for now Dec 24, 2011
system add php's equivalent of python's zip bif Nov 8, 2011
vendor links and videos Dec 8, 2011
wiki add directory for kodelearn wiki files in markdown format (.md) Sep 2, 2011
.gitignore gitignore modified to include config directory again Jul 12, 2011
.gitmodules add submodule for the eventdispatch module Dec 1, 2011
.htaccess base.php conflict resolved Jul 12, 2011 add kodelearn license and installation instructions Sep 7, 2011 Update download link in README Jul 17, 2012
database.sql *Bump* Fix database.sql Jun 18, 2012
db_changes.txt add noticesettings schema to db_changes Dec 8, 2011
index.php add code for sending manual notices in the form of email Dec 23, 2011
installed.php Initial commit Jul 8, 2011 give permission to image/data/cache/ and add Jul 22, 2011
users_sample.csv add upload csv of users Jul 20, 2011

Kodelearn - OpenSource Learning Management System.


Authors: Team Kodeplay

What is Kodelearn ?

Kodelearn is a web based learning management system that can be used by educational institutions such as schools, universities to manage students, teachers, course content, lectures, exams, results, attendance etc and to engage students, their parents and teachers through an easy to use interface.

What platform is Kodelearn based on ?

Kodelearn is written in PHP using the Kohana PHP Framework (v3.1)

Installation instructions

Downloading Source Code

  • Download the stable source code from Kodelearn website

  • Or clone from github specially if you are looking to hack around

    $ git clone

    You will also need to update the submodules by running the command

    $ cd kodelearn
    $ git submodule init
    $ git submodule update

    We are using a purifier module for XSS filtering Since this module also has its own submodules, you will need to updates those submodules too

    $ cd modules/purifier
    $ git submodule update --init 

    After this, make the directories library/DefinitionCache/Serializer in MODPATH/purifier/vendor/htmlpurifier writable by the web server.

    For more info check the purifier module repo

Application Config

Open the file application/bootstrap.php and find Kohana::init,

Change the value of base_url to the one you would be using.

Database && Database Config

Create a new Mysql database and import the database schema and dump provided in the database.sql file in the kodelearn directory.

Copy the contents of the file application/config/sample-database.php to a new file database.php in the same directory and modify the 'default' configuration in it to add your database details.

Make sure you are copying the file to a new file and not renaming. Renaming will work too but it will make the git repo dirty.

Writable Files and Directories

Give write permissions to following directories

  • application/cache/
  • application/logs/
  • media/image/data/cache/

Change .htaccess file if required

Depending upon where you install kodelearn inside the document root of your localhost or virtual host, the .htaccess file will have to be modified.

for eg. If your base_url (the one you entered in bootstrap.php) is of the form then there is no need to change .htaccess file. If however, the base_url is of the form http://localhost/kodelearn/ then change the RewriteBase directory in .htaccess as follows

RewriteBase /kodelearn/

It's done!!

Open the base_url in the browser.

Following admin account is already there for you to get started quickly -

email: password: kodelearn

After loggin in, change the email and password as per your convenience.

Kodelearn uses the Kohana PHP Framework, version 3.1 (release)

Contributing to Kodelearn

If you think you can help us make this project better, feel free to do so.

You may contribute by either reporting a bug (by the way of opening an issue here on github) or may contribute directly by forking this project and sending pull request.

We fairly follow this git branching model so the master branch is always stable and there is a develop branch for any new development.