Github clone of the Mahara ePortfolio git repository. Info on contributing to the main repo: Questions are answered in or for quick ones use Twitter @MaharaProject
Switch branches/tags
18.04.2_RELEASE 18.04.1_RELEASE 18.04.0_RELEASE 18.04RC2_RELEASE 18.04RC1_RELEASE 17.10.6_RELEASE 17.10.5_RELEASE 17.10.4_RELEASE 17.10.3_RELEASE 17.10.2_RELEASE 17.10.1_RELEASE 17.10.0_RELEASE 17.10RC2_RELEASE 17.10RC1_RELEASE 17.04.9_RELEASE 17.04.8_RELEASE 17.04.7_RELEASE 17.04.6_RELEASE 17.04.5_RELEASE 17.04.4_RELEASE 17.04.3_RELEASE 17.04.2_RELEASE 17.04.1_RELEASE 17.04.0_RELEASE 17.04RC2_RELEASE 17.04RC1_RELEASE 16.10.9_RELEASE 16.10.8_RELEASE 16.10.7_RELEASE 16.10.6_RELEASE 16.10.5_RELEASE 16.10.4_RELEASE 16.10.3_RELEASE 16.10.2_RELEASE 16.10.1_RELEASE 16.10.0_RELEASE 16.10RC2_RELEASE 16.10RC1_RELEASE 16.04.9_RELEASE 16.04.8_RELEASE 16.04.7_RELEASE 16.04.6_RELEASE 16.04.5_RELEASE 16.04.4_RELEASE 16.04.3_RELEASE 16.04.2_RELEASE 16.04.1_RELEASE 16.04.0_RELEASE 16.04RC2_RELEASE 16.04RC1_RELEASE 15.10.8_RELEASE 15.10.7_RELEASE 15.10.6_RELEASE 15.10.5_RELEASE 15.10.4_RELEASE 15.10.3_RELEASE 15.10.2_RELEASE 15.10.1_RELEASE 15.10.0_RELEASE 15.10RC2_RELEASE 15.10RC1_RELEASE 15.04.15_RELEASE 15.04.14_RELEASE 15.04.13_RELEASE 15.04.12_RELEASE 15.04.11_RELEASE 15.04.10_RELEASE 15.04.9_RELEASE 15.04.8_RELEASE 15.04.7_RELEASE 15.04.6_RELEASE 15.04.5_RELEASE 15.04.4_RELEASE 15.04.3_RELEASE 15.04.2_RELEASE 15.04.1_RELEASE 15.04.0_RELEASE 15.04RC2_RELEASE 15.04RC1_RELEASE 1.10.10_RELEASE 1.10.9_RELEASE 1.10.8_RELEASE 1.10.7_RELEASE 1.10.6_RELEASE 1.10.5_RELEASE 1.10.4_RELEASE 1.10.3_RELEASE 1.10.2_RELEASE 1.10.1_RELEASE 1.10.0_RELEASE 1.10RC1_RELEASE 1.9.9_RELEASE 1.9.8_RELEASE 1.9.7_RELEASE 1.9.6_RELEASE 1.9.5_RELEASE 1.9.4_RELEASE 1.9.3_RELEASE 1.9.2_RELEASE 1.9.1_RELEASE
Nothing to show
Clone or download

Mahara Readme

Mahara is an open source ePortfolio system. An ePortfolio is a type of web application that allows users to record and share evidence of lifelong learning.

For more information about Mahara and ePortfolios, see the Mahara user manual's introduction chapter:


The best ways of obtaining support are:


For detailed installation instructions see the installation page on our wiki:

The following is a check list of the steps you need to take. Please refer to the installation instructions for the details:

  1. Create a Postgres or MySQL database for Mahara.
  2. Copy the Mahara files under "htdocs" into your web root.
  3. Create a Mahara "dataroot" directory outside of your web root.
  4. Copy htdocs/config-dist.php to config.php.
  5. Edit config.php with the correct details for your installation.


Mahara 18.10 supports direct upgrades from previous Mahara versions 15.04.0 and later.

If you are upgrading from an earlier version you will need to upgrade in two steps:

  • Upgrade version 'X' -> 15.04.X (latest 15.04 version)


  • Upgrade version 15.04.X -> 'Y'

To upgrade an existing Mahara installation, follow the instructions here:

If you are upgrading from Mahara 15.10 or earlier, you will need to add a "urlsecret" value to your config.php file if you wish to use the web-based upgrade and/or cron scripts. See:


Here are the system requirements needed to run Mahara 18.10.


Mahara is only officially supported on Debian (7.0/"Wheezy" or later) and Ubuntu (14.04/"Trusty Tahr" or later), however it will probably run in any OS with a suitable web server.

Note: This version of Mahara has NOT been tested on Debian 9+ / Ubuntu 17.10+

Web Server

Mahara is only officially supported on Apache 2 or later, although it will probably run in any web server with the proper PHP extensions.


Mahara requires either Postgres or MySQL. It would require extensive modification to support other databases.

  • Postgres 9.4 or later
  • MySQL 5.6 or later
  • MariaDB 10.0 or later

Note: This version of Mahara has NOT been tested on Postgres 10+, MySQL 8.0+, MariaDB 10.3+ versions.


Mahara requires PHP version 5.5.9 or later. The "magic_quotes" and "register_globals" settings should be turned off (which is the default on modern PHP installations).

The following PHP extensions are also required:

  • curl
  • gd (including Freetype support)
  • json
  • ldap
  • libxml
  • mbstring
  • mcrypt
  • mime_magic; or fileinfo
  • pgsql; or mysqli; or mysql
  • session
  • SimpleXML
  • bz2 (optional)
  • imagick (optional)
  • openssl and xmlrpc (optional; for networking support)
  • memcache (optional; for SAML auth plugin)
  • zlib (optional)
  • adodb (optional; improves performance)
  • enchant or pspell (optional; for TinyMCE spellcheck button)

Note: This version of Mahara has not been tested on php versions 7.2+.

Web Browser

Mahara should be accessible in any modern web browser with Javascript support. However, it is only actively tested in the most recent versions of Firefox, Chrome (also for Android), Safari (also for iOS), and Opera. Microsoft browsers, i.e. Internet Explorer and Microsoft Edge, are supported to a maximum of the three most recent versions that are officially supported by Microsoft.

You can still use Mahara on older browsers, but may not have all functionality available.

For Mahara 18.10, the supported browser versions are: // TODO: Review list of browsers closer to the release date.

  • Firefox - 56.0
  • Chrome - 61.0
  • Safari - 11
  • Opera - 47.0
  • IE - 11 and Edge
  • Safari for iOS
  • Chrome for Android


Mahara has been translated into many languages. You can get language packs from:


Documentation on integrating Mahara with Moodle can be found in the 3.1MB PDF here:

Copyright notice

Copyright (C) 2006-2017 Catalyst IT and others; see:

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 or later of the License.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see

Additional permission under GNU GPL version 3 section 7:

If you modify this program, or any covered work, by linking or combining it with the OpenSSL project's OpenSSL library (or a modified version of that library), containing parts covered by the terms of the OpenSSL or SSLeay licenses, the Mahara copyright holders grant you additional permission to convey the resulting work. Corresponding Source for a non-source form of such a combination shall include the source code for the parts of OpenSSL used as well as that of the covered work.