FREEDOM251

Freedom251 › Learning Record Store Software

openLRS

Free plan APISelf-hostedWeb

Visit openLRS Alternatives

What openLRS is

openLRS is a Learning Record Store for receiving, storing, and retrieving records created by learning activities. It supports the Experience API (xAPI), also known as Tin Can API, and combines an Express backend for handling records with a React frontend for displaying them. Learning platforms create records through a POST request to the `/lrs` endpoint. Requests must include xAPI data and session metadata with a custom consumer and context ID, plus an `X-Signature` header calculated using a secret shared with openLRS.

The project was built for openHPI and the KI Campus H5P Tool, and can be adapted for other platforms. Its Moodle plugin captures xAPI events from H5P content and sends them to an external openLRS for analysis. Running the service requires MongoDB, Node modules, and server deployment of the Express backend. openLRS is free, open source, and available under the MIT License. The repository is archived and read-only. openHPI is based in Potsdam, Germany; its imprint identifies Hasso-Plattner-Institut für Digital Engineering gGmbH as the organization behind openHPI.

Who it suits

openLRS suits teams that need an xAPI store for learning activity records and can deploy and configure a server, MongoDB, and Node modules. It may fit Moodle users working with H5P content who want to send captured events to an external LRS for analysis.

What it does well

  • Free and available under the MIT License.
  • Supports xAPI, also known as Tin Can API.
  • Includes an Express backend and React record display.
  • Moodle plugin sends H5P xAPI events to an external LRS.
  • Can be adapted for platforms beyond its original use.

What to know first

  • Requires MongoDB, Node modules, and server deployment.
  • The repository is archived and read-only.
  • Moodle setup requires an external LRS URL and web service token.

Getting started

  1. Open the openLRS GitHub repository.
  2. Prepare a server deployment for the Express backend and install Node modules.
  3. Set up MongoDB and configure its connection URL, database, and xAPI collection.
  4. Build the frontend and serve it with the Express backend.
  5. For Moodle, configure the external LRS URL, secret key, consumer ID, and Moodle web service token.
  6. Send xAPI data and session metadata to `/lrs` with a shared-secret `X-Signature` header.

Verdict

Choose openLRS if you need a free, MIT-licensed store for xAPI learning records and can manage its server and database setup. Look elsewhere if you need an actively maintained repository, since this one is archived and read-only.

Questions

Is openLRS free?

Yes. It is free and available under the MIT License.

What does openLRS do?

It stores and retrieves learning records generated by learning activities, using xAPI.

What platforms does it support?

Its listed platforms are API, self-hosted, and web.

Can it work with Moodle and H5P?

Its Moodle plugin captures xAPI events from H5P content and sends them to an external openLRS for analysis.

What is required to run it?

The setup instructions require MongoDB, Node modules, and server deployment of the Express backend.

Is the repository maintained?

GitHub states that it was archived on February 20, 2026, and is read-only.

Facts from openLRS's own pages

API
The documented /lrs endpoint accepts POST requests to create an LRS entry. · github.com, 8 Oct 2026
API endpoint
The LRS endpoint accepts POST requests at /lrs to create an entry. · github.com, 4 Oct 2026
Authentication
The /lrs endpoint requires an X-Signature header calculated from a secret shared by the learning platform and openLRS. · github.com, 8 Oct 2026
Backend and frontend
The backend is an Express app that stores and retrieves xAPI records, and the frontend is a React app that displays records. · github.com, 4 Oct 2026
Data format
Requests to the endpoint must contain xAPI data and session metadata, including a custom consumer and context ID. · github.com, 4 Oct 2026
Deployment
The instructions describe building the frontend and serving it with the Express backend on a server. · github.com, 8 Oct 2026
Deployment requirements
The setup instructions require MongoDB, Node modules, and a server deployment using the Express backend. · github.com, 4 Oct 2026
Headquarters
Potsdam, Germany · github.com, 28 Sept 2026
Intended use
The project says it was built for the openHPI/KI Campus H5P Tool and can be adapted for other platforms. · github.com, 8 Oct 2026
Interface
The repository contains an Express backend for storing and retrieving xAPI records and a React frontend for displaying records. · github.com, 8 Oct 2026
License
The repository states that openLRS is open source under the MIT License. · github.com, 8 Oct 2026
Maker identity
The openHPI imprint identifies Hasso-Plattner-Institut für Digital Engineering gGmbH as the organization behind openHPI. · open.hpi.de, 4 Oct 2026
Maker location
The openHPI GitHub organization lists its location as Potsdam, Germany. · github.com, 4 Oct 2026
Moodle integration
The openLRS Moodle plugin captures xAPI events from H5P content and sends them to an external openLRS for analysis. · github.com, 8 Oct 2026
Moodle setup
The Moodle plugin requires an external LRS URL, a secret key, a consumer ID, and a Moodle web service token. · github.com, 4 Oct 2026
Project status
GitHub says the repository was archived on February 20, 2026, and is read-only. · github.com, 8 Oct 2026
Purpose
openLRS stores and retrieves learning records generated by learning activities and supports the Experience API (xAPI). · github.com, 8 Oct 2026
Repository status
GitHub states that the repository was archived on February 20, 2026, and is read-only. · github.com, 4 Oct 2026
Storage requirement
The setup instructions require MongoDB and configuration of its connection URL, database, and xAPI collection. · github.com, 8 Oct 2026
Support
The repository provides setup and deployment instructions; it does not state a support service or response commitment. · github.com, 8 Oct 2026
xAPI support
It supports the Experience API (xAPI), also known as Tin Can API. · github.com, 4 Oct 2026

Where openLRS stands on Freedom251

Look at these too