Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Moodle is an Open Source Course Management System (CMS), also known as a Learning Management System (LMS) or a Virtual Learning Environment (VLE). This repository is a direct mirror of the official moodle.git repository at Please do NOT file PULL requests here, instead please use
PHP JavaScript Cucumber CSS Other
Failed to load latest commit information.
admin MDL-49972 preferences: Fix incorrect title and headings
auth MDL-49799 behat: replaced with
availability MDL-49477 availability_grade-form: checkbox disable problem fixed
backup MDL-49799 behat: replaced with
badges Merge branch 'm29_MDL-49922' of
blocks Merge branch 'patch-2' of
blog MDL-49799 behat: replaced with
cache MDL-39459 cache: mode included in stats output
calendar MDL-49799 behat: replaced with
cohort MDL-49799 behat: replaced with
comment Merge branch 'MDL-47773-master-commentui' of git://…
completion MDL-49799 behat: replaced with
course Merge branch 'MDL-34921_master_unwanted-sitehome-redirects' of https:…
enrol Merge branch 'wip-MDL-49953-master' of git://…
error MDL-31560 Error: Fixed coding style
files MDL-49799 behat: replaced with
filter MDL-44367 filter_data: Adding basic unit tests
grade MDL-49854 core: User navigation refinements
group Merge branch 'm29_MDL-49782' of
install Automatically generated installer lang files
iplookup MDL-47321 iplookup: Prevent guest users from using iplookup
lang MDL-49849 profile: Split site access information into it's own section
lib Merge branch 'MDL-49613' of
local MDL-49643 navigation: Fix API for extending navigation in local plugins
login MDL-49635 Navigation: Site pages consistent headers + navigation for …
message MDL-49960 message: Adding behat test for recent conversations
mnet MDL-48779 MNet: multibyte substr in certificate generation
mod Merge branch 'MDL-49813' of
my MDL-49799 behat: replaced with
notes Merge branch 'MDL-45131-master' of git://
pix MDL-48934 navigation: Update the default entries in the user menu.
plagiarism MDL-39752 fix whitespace errors
portfolio MDL-49519 Google API: use autoload everywhere
question Merge branch 'wip-mdl-49799-m' of
rating MDL-49763 webservices: Handle correctly deleted users for ratings
report MDL-49799 behat: replaced with
repository MDL-49799 behat: replaced with
rss MDL-46463 core_rss: coding style cleanup in /rss
tag MDL-49635 Navigation: Site pages consistent headers + navigation for …
theme MDL-49871 theme_base: Moving notification templates in right location
user Merge branch 'MDL-49311-master' of git://
userpix MDL-34460 Librairies: Replaced deprecated get_context_instance()
webservice Merge branch 'MDL-49894-master' of git://
.csslintrc MDL-48277 css: enable some helpful csslint warnings
.gitignore MDL-49046 javascript: Add support for AMD modules and jquery.
.jshintrc MDL-49046 javascript: Add support for AMD modules and jquery.
.shifter.json MDL-42774 JavaScript: Ensure that shifter cleans build directories be…
COPYING.txt license MDL-20717 Updated the COPYING file to GPLv3 for head
Gruntfile.js MDL-49046 javascript: Add support for AMD modules and jquery.
README.txt MDL-38048 documentation: Typo in README file
TRADEMARK.txt MDL-20700 coding style cleanup - cvs keywords removed, closign php ta…
behat.yml.dist MDL-37046 behat: Adding empty Behat config file
brokenfile.php MDL-26069 detect missing file postprocessing
composer.json MDL-49432 behat: guzzle packages has been unified
config-dist.php MDL-44874 core: Add per-request directory functions
draftfile.php MDL-31501 rework user session architecture
file.php MDL-48799 Files API: fixed legacy directory fallback.
help.php MDL-48389 forms: added page title to help text
help_ajax.php MDL 38508 JavaScript: Split out AJAX and non-AJAX help
index.php MDL-49689 navigation: Allow the user to set their homepage.
install.php MDL-49684 timezones: rewrite timezone support
mdeploy.php MDL-49087 mnet: Ensure typeroot is in dirroot
mdeploytest.php MDL-49087 mnet: Ensure typeroot is in dirroot
package.json MDL-49046 javascript: Add support for AMD modules and jquery.
phpunit.xml.dist MDL-49203 webservices: Add missing component testsuite declaration
pluginfile.php MDL-40719 pluginfile.php: the file API is now stable, so hide debug.
tags.txt MDL-48855 dev: Fix ctags command to handle extra whitespace
version.php on-demand release 2.9beta+



For the impatient, here is a basic outline of the
installation process, which normally takes me only
a few minutes:

1) Move the Moodle files into your web directory.

2) Create a single database for Moodle to store all
   its tables in (or choose an existing database).

3) Visit your Moodle site with a browser, you should
   be taken to the install.php script, which will lead
   you through creating a config.php file and then
   setting up Moodle, creating an admin account etc.

4) Set up a cron task to call the file admin/cron.php
   every five minutes or so.

For more information, see the INSTALL DOCUMENTATION:

Good luck and have fun!
Martin Dougiamas, Lead Developer

Something went wrong with that request. Please try again.