LORIS is a web-accessible database solution for longitudinal multi-site studies.
PHP JavaScript Smarty CSS SQLPL Shell Other
johnsaigle and driusan [Help Editor] Use safe update instead of unsafe update (#3866)
The HelpFile class has been changed to use the safe update function from the database class instead of the explicitly unsafe version.

unsafeupdate is to be used with caution, only when you know you need to insert HTML and know that you can trust it.  This change fixes a security issue while preserving the markup functionality of the help editor. HTML will not directly render but Markdown will.
Latest commit 83fc245 Aug 14, 2018
Failed to load latest commit information.
.phan Fix phan on 20.0-release branch (#3735) Jun 18, 2018
SQL [tools] 20.0 tools and SQL moved to proper directory (#3855) Aug 3, 2018
docs Merge remote-tracking branch 'aces/bugfix' into MinorMerge Aug 13, 2018
htdocs Fix typo in API endpoint (#3868) Aug 7, 2018
jsx [jsx/Core] Restrict DateElement year to 4 digits (#3840) Aug 2, 2018
modules [Help Editor] Use safe update instead of unsafe update (#3866) Aug 14, 2018
php [API] Fix loading instruments from API (#3843) Aug 4, 2018
smarty/templates Merge remote-tracking branch 'aces/minor' into HEAD Jun 14, 2018
src [Middleware] Move getControlPanel call to after handle() (#3841) Aug 2, 2018
test Merge pull request #3742 from aces/20.0-release Jun 19, 2018
tools [tools] 20.0 tools and SQL moved to proper directory (#3855) Aug 3, 2018
.babelrc [Core] Update Babel + Grunt (#2273) Oct 12, 2016
.dockerignore Clean up docker image Oct 28, 2015
.editorconfig [Core] Code style file (#2735) May 4, 2017
.eslintignore [Instrument builder] ESLint + fix errors caused by new react (#2486) Jan 20, 2017
.eslintrc.json Add ReactDOM to the list of globals (#2706) Mar 30, 2017
.gitignore [tools] 20.0 tools and SQL moved to proper directory (#3855) Aug 3, 2018
.mailmap ENH: initiate mailmap for a proper output in e.g. "git shortlog -sn" (#… Jun 23, 2016
.travis.yml Fix phan on 20.0-release branch (#3735) Jun 18, 2018
CONTRIBUTING.md Further tweaks to Contributing guidelines for 17 release (#2373) Oct 28, 2016
Dockerfile Fix minor branch Travis (#3495) Feb 19, 2018
Dockerfile.MySQL Fix minor branch Travis (#3495) Feb 19, 2018
Dockerfile.test.db [Automation Test] test with RaisinBread data (#3139) Oct 25, 2017
Dockerfile.test.php7 Fix minor branch Travis (#3495) Feb 19, 2018
Dockerfile.test.php7.debug [Testing] Dockerized test suite (#2430) Dec 2, 2016
LICENSE This updates the license on all Loris header files Oct 17, 2014
LORIS_react.README.md [Documentation] React readme (#2884) Jun 16, 2017
PULL_REQUEST_TEMPLATE.md Updated pull request template (#2613) Mar 17, 2017
Procfile Adding Procfile for heroku Nov 12, 2015
README.CentOS6.md fixed spelling (#3865) Aug 7, 2018
README.Mac.md [Installation] Updating Mac README with markdown updates (#3173) Nov 3, 2017
README.md [RELEASE] Update main Readme for 20.0 (#3737) Jun 18, 2018
VERSION update version file (#3814) Aug 7, 2018
Vagrantfile [Install/Vagrant] Add zip + unzip to vagrant install so that composer… Nov 16, 2017
app.json Adding app.json for heroku Nov 12, 2015
composer.json Remove HTML_QuickForm as a dependency and update library versions (#3659 May 28, 2018
composer.lock Remove HTML_QuickForm as a dependency and update library versions (#3659 May 28, 2018
docker-compose.yml Unbreak Docker tests (#2827) Jun 13, 2017
package.json Webpack integration (#2540) Jan 27, 2017
webpack.config.js [Data Dictionary] Reactify module + searchKeyword functionality added… May 28, 2018


LORIS Neuroimaging Platform

LORIS (Longitudinal Online Research and Imaging System) is a web-based data and project management software for neuroimaging research. LORIS makes it easy to manage large datasets including behavioural, clinical, neuroimaging and genetic data acquired over time or at different sites.

NEW ⇾ Try LORIS on Heroku before installing it on your system
Test out the project management and clinical data management side of LORIS (complete Imaging features not yet available)
Deploy and log in with username admin and the password that's set up during deployment via ClearDB.


Branch Status
master Build Status
major Build Status
minor Build Status
bugfix Build Status

This Readme covers installation of the LORIS v20.* release on Ubuntu. (CentOS Readme also available).

Please consult the LORIS Wiki Setup Guide notes on this Install process for more information not included in this Readme. The LORIS Developers mailing list may also provide installation guidance not covered in the Wiki.

Prerequisites for Installation

  • LINUX (supported on Ubuntu 14+ and CentOS 6.5)
  • Apache2
  • MySQL 5.7
  • PHP 7.2
  • Package manager (for LINUX distributions)
  • Composer : should be run with --no-dev option


  • If you are upgrading your LORIS, you'll also want to upgrade to both PHP 7.2 and MySQL 5.7.
  • Composer should be run with --no-dev option unless you are an active LORIS developer.

Consult the LORIS Wiki page on this Install process for more information.


  1. Set up LINUX user lorisadmin and create LORIS base directory:

    sudo useradd -U -m -G sudo -s /bin/bash lorisadmin
    sudo passwd lorisadmin
    su - lorisadmin

    Important ⇾ All steps from this point forward must be executed by lorisadmin user

    sudo mkdir -m 775 -p /var/www/$projectname
    sudo chown lorisadmin.lorisadmin /var/www/$projectname

    $projectname ⇾ "loris" or one-word project name

  2. Get code: Download the latest release from the releases page and extract it to /var/www/$projectname

  3. Run installer script to install core code, and libraries. The script will prompt for information and so that it can create directories automatically.

    For more information, please read the Installing Loris wiki page.

    cd /var/www/$projectname/tools
  4. Apache configuration and restart LORIS requires Apache's mod_rewrite module to rewrite its URLs. Enable this module, then restart Apache:

    sudo a2enmod rewrite
    sudo service apache2 reload
  5. Go to http://localhost/installdb.php and follow the instructions to finalize LORIS installation.

    Note: Apache config files will be installed as *.conf, per Ubuntu 14.04. If running an earlier version of Ubuntu, rename these files, then run the following commands. After, restart Apache.

    sudo a2dissite default
    sudo a2ensite $projectname
  6. Follow the Setup Guide in the LORIS Wiki to complete your post-installation setup and configuration, and for more documentation.


Please feel free to subscribe to the LORIS Developers mailing list to ask any LORIS-related questions.