Online Learning and Training Core Library integrating various developments of the open source community that have emerged in the last two decades, mainly in Switzerland and Germany.
Switch branches/tags
80-patch Campuskurs FXOLAT-282-virtualclassroom FXOLAT-306_adaptions_to_olat_for_moodleconverter LMSUZH-19 LMSUZH-23 LMSUZH-32 LMSUZH-37 LMSUZH-42 LMSUZH-45 LMSUZH-60 LMSUZH-81 LMSUZH-87 LMSUZH-89 LMSUZH-101 LMSUZH-103 LMSUZH-109 LMSUZH-110 LMSUZH-127 LMSUZH-135 LMSUZH-144 LMSUZH-147 LMSUZH-148 LMSUZH-150 LMSUZH-155 LMSUZH-166 LMSUZH-169 LMSUZH-170 LMSUZH-173 LMSUZH-177 LMSUZH-178 LMSUZH-180 LMSUZH-181 LMSUZH-186 LMSUZH-189 LMSUZH-195 LMSUZH-196 LMSUZH-198 LMSUZH-199 LMSUZH-209 LMSUZH-211 LMSUZH-217 LMSUZH-225 LMSUZH-226 LMSUZH-238 LMSUZH-240 LMSUZH-245 LMSUZH-247 LMSUZH-249 LMSUZH-250 LMSUZH-251 LMSUZH-252 LMSUZH-254 LMSUZH-255 LMSUZH-256 LMSUZH-258 LMSUZH-260 LMSUZH-261 LMSUZH-264 LMSUZH-267 LMSUZH-268 LMSUZH-269 LMSUZH-271 LMSUZH-287 LMSUZH-295 LMSUZH-297 LMSUZH-299 LMSUZH-314 LMSUZH-319 LMSUZH-321 LMSUZH-329 LMSUZH-335 LMSUZH-337 LMSUZH-339 LMSUZH-341 LMSUZH-342 LMSUZH-353 LMSUZH-358 LMSUZH-361 LMSUZH-363 LMSUZH-369 LMSUZH-370 LMSUZH-371 LMSUZH-372 LMSUZH-375 LMSUZH-376 LMSUZH-378 LMSUZH-379 LMSUZH-386 LMSUZH-387 LMSUZH-388 LMSUZH-398 LMSUZH-402 LMSUZH-405 LMSUZH-409 LMSUZH-411 LMSUZH-414 LMSUZH-421 LMSUZH-422 LMSUZH-423 LMSUZH-428 LMSUZH-435 LMSUZH-436 LMSUZH-438 LMSUZH-443 LMSUZH-444 LMSUZH-446 LMSUZH-454 LMSUZH-456 LMSUZH-460 LMSUZH-464 LMSUZH-465 LMSUZH-466 LMSUZH-470 LMSUZH-475 LMSUZH-482 LMSUZH-486 LMSUZH-492 LMSUZH-497 LMSUZH-498 LMSUZH-511 LMSUZH-514 LMSUZH-523 LMSUZH-528 LMSUZH-532 LMSUZH-533-webpack LMSUZH-533 LMSUZH-566 LMSUZH-587 LMSUZH-590 LMSUZH-598 LMSUZH-604 LMSUZH-606 LMSUZH-615 LMSUZH-616 LMSUZH-617 LMSUZH-624 LMSUZH-632 LMSUZH-640 LMSUZH-647 LMSUZH-656 LMSUZH-671 LMSUZH-676 LMSUZH-696 LMSUZH-709 LMSUZH-710 LMSUZH-711 LMSUZH-750 LMSUZH-761 LMSUZH-766 LMSUZH-788 OLATNG-5 OLATNG-117 OLATNG-124 Performance Theme WebOnyx bps i18n_OO master openolat11x openolat105 uzh72backport uzhFixes711 vcrp
Nothing to show
Clone or download

OLAT | Online Learning and Training

OLAT is a mature Learning Management System (LMS) with a nearly twenty-year track record. It has been developed since 1999 at University of Zurich (UZH). OLAT is hosted by the Department of Information Technology of UZH and is available to all faculties and institutes as well as to other Swiss universities and higher education institutions.

To learn more, visit

OLAT Feature Modules

OLAT Infrastructure Modules

  • lmsuzh-extension-continuousintegration CI/CD pipeline based on Mercurial, Git, Maven, Jenkins and Rancher
  • lmsuzh-extension-docker Container technology integration based on Docker
  • lmsuzh-extension-database Persistence containers based on PostgreSQL (deprecated since 7/2018: MySQL)
  • lmsuzh-extension-embedded HTTP server and Servlet container based on Jetty
  • lmsuzh-extension-restclient Connector for web services based on REST
  • lmsuzh-extension-loadtest Performance testing based on JMeter
  • lmsuzh-extension-functionaltest Automated testing based on Selenium
  • lmsuzh-extension-scenariospecification Behavior-driven development approach based on JGiven

OLAT Core Modules

  • lmsuzh-extension-core Extensions core
  • lmsuzh-extension-tool Module utilities
  • lmsuzh-extension-config Settings and themes
  • lmsuzh-extension-war Web application archive
  • lmsuzh-extension-buildtools Building helpers
  • lmsuzh-extension-olatreplacement Bridging helpers
  • openolat-lms OpenOLAT project

OLAT Java Development Environment

Grab the OLAT Source code

$ git clone lmsuzh-extension-DEVELOPMENT
$ git clone openolat-lms-DEVELOPMENT

Build the OLAT Environment (skipping the CI/CD infrastructure)

$ cd openolat-lms-DEVELOPMENT
$ mvn clean install -Ptomcat,compressjs -DskipTests=true -DskipSeleniumTests=true

$ cd lmsuzh-extension-DEVELOPMENT
$ mvn clean install -DskipTests=true -Ddocker.skip=true

$ cd lmsuzh-extension-DEVELOPMENT/lmsuzh-extension-docker
$ mvn -Plocal-docker-registry docker:start

$ cd lmsuzh-extension-DEVELOPMENT/lmsuzh-extension-database
$ mvn package -Dmaven.main.skip docker:start

Run the OLAT Java app

$ cd lmsuzh-extension-DEVELOPMENT
$ java -javaagent:${HOME}/.m2/repository/org/aspectj/aspectjweaver/1.9.0/aspectjweaver-1.9.0.jar -ea \
       -jar lmsuzh-extension-embedded/target/lmsuzh-extension-embedded-1.0-SNAPSHOT.jar

COMING SOON: Run OLAT Docker apps

$ docker run olatsystems/olat-app
$ docker run olatsystems/opencast-app

To learn more, visit and


The OLAT open source code is licensed under the terms of the Apache license.