Kolibri User Guide

Kolibri is an open-source educational platform specially designed to provide offline access to a wide range of quality, openly licensed educational contents in low-resource contexts like rural schools, refugee camps, orphanages, and also in non-formal school programs.

Kolibri can serve high quality education content from several publicly available content channels, collections of educational resources (exercises, videos, audio or document files) and associated metadata, prepared and organized for their use in Kolibri. It works in conjunction with Kolibri Studio, the curriculum tool used to organize content and build custom content channels, aligned to the local curricula, or according to specific learning needs.

Logos of several publicly available learning content sources that can be used with Kolibri.

Some of the publicly available learning content that you can use with Kolibri.

Learners - start here

Whether you are using Kolibri at your school, in a training center or at home, learn how to open it on your device, what kind of content and activities can you work with, and how to submit quizzes created by your coaches or tutors.

For Coaches using Kolibri

Read how to monitor activity and track the progress of your learners all the way to single answers to particular questions. Create and manage different learner groups, assign lessons, administer quizzes and view reports.

For Admins and Super admins of Kolibri

Begin by reading how to install and start Kolibri server on the supported platforms, and configure other devices in the local network to access its content. Proceed on how to import content channels, create and manage users and classes. Configure the settings for your facility, and assign or edit permissions for other users. Learn how to work with Kolibri from the command line, troubleshoot network issues, and ask for support on our Community Forums.

Happy learning with Kolibri!

Install Kolibri

See the Kolibri changelog here to review specific changes in each version of Kolibri. Documentation for previous Kolibri versions are available here.

Tutorials

Step-by-step guides with more details.

An offline Raspberry Pi server

This guide shows you how to configure a Raspberry Pi as a local Wi-Fi hotspot serving Kolibri.

There are several varieties of operating systems for Raspberry Pi. This guide is intended for and tested on Raspbian, the most popular choice of OS, based on Debian.

Warning

These steps require an internet connection during the installation. After completing the installation, it’s possible to replicate an image for offline installation.

Prerequisites
Raspberry Pi and accessories

Kolibri runs on both Raspberry Pi 3 and 4

  • Raspberry Pi Model 3, 3+, 4 and Zero W - or: Raspberry Pi versions that support Raspbian Stretch or Buster and has onboard Wi-Fi
  • Formatted MicroSD Card > 4GB (64 GB recommended or attached USB storage)
  • Card reader for a laptop or computer to write to the MicroSD card
  • Latest Raspbian Stretch OS .img file
  • Internet connectivity (for setting up the device)
  • An internal MicroSD card is used for the base system, and an external storage media for contents (for instance a 64 GB USB flash). We recommend that you have an Ethernet cable for online connectivity while installing and fetching contents for Kolibri.

Tip

The standard Raspbian OS has a graphical desktop. You can also install Raspbian Lite which uses fewer resources, but only has a command line interface. The instructions in this documentation work seamlessly on both.

Getting started guides

This guide provides a step-by-step setup of Kolibri but does not try to explain basic concepts for your Raspberry Pi. If you are new to the system, you are encouraged to read the official Getting Started guide for basic knowledge about setting up your device.

In doubt about which Raspbian to choose? We recommend using Raspbian Lite if you are comfortable with an environment that only has a terminal and no graphical user interface. Using the desktop version will consume more CPU, memory and electricity. Finally, you do have the option to switch off the desktop environment once you have finished setting up the device.

We install Kolibri as one of the very final step. But please read and complete the prior steps.

Setting up the SD card

The following commands work on Linux/macOS for setting up the .img files provided. You will also need to know the device node for the SD Card reader. On Linux, this is typically /dev/mmcblk0 for the 0th card in your card reader.

# Unpack the .zip into memory and write it to <device node>
unzip -p /path/to/raspbian-stretch-lite.zip | sudo dd of=/dev/mmcblk123 bs=4M conv=fsync

Tip

Read the official guides for setting up your card: Copying .img files

Tip

Select your MicroSD card based on other people’s experiences and technical benchmarks. For more information, read this Community Forums thread.

Updating the software

After installing and starting up your Raspberry Pi, it is recommended that you upgrade all the software on the device:

sudo apt update
sudo apt upgrade
sudo reboot  # Ensure that updates are active
Updating the firmware

Run sudo rpi-update to update the firmware. Nothing in this tutorial necessitates this, but it’s always recommended because hardware issues may be solved over time and performance improved. You cannot replicate this by copying MicroSD cards, you would have to repeat this step for every new Raspberry Pi device that you are installing.

General system configuration

Run sudo raspi-config for the general setup options such as password change, keyboard layout, timezone etc.

Warning

Always change your password after setting up device. The default password for the user pi is raspberry.

Setting up a hotspot

Raspberry Pi 3 and 4 have an internal Wi-Fi adapter which can serve as an access point, thus giving other devices the ability to connect to the Raspberry Pi through Wi-Fi. In this case, we call the Raspberry Pi a hotspot.

We assume that you will need to connect the Raspberry Pi to the internet both before and after setting up the hotspot. The easiest way to achieve this is through the Raspberry Pi’s Ethernet cable connection. In this way, you don’t have to disable and enable the Wi-Fi configuration each time.

  • The device can be set up such that it automatically uses the Ethernet interface as a gateway to the internet when a cable is connected.
  • If you need to connect to the internet through Wi-Fi, you will have to disable the hotspot and connect through the normal network management.
Installing hostapd and dnsmasq

In order to serve clients on a local Wi-Fi hotspot, you need the Raspberry Pi to act as:

  • an access point
  • a DHCP server
  • a DNS server

The access point is handled by the package hostapd and the DHCP and DNS server are both available through the dnsmasq package. We will install and configure both in this section. For more detailed information, see the online Raspberry Pi docs.

sudo apt install dnsmasq hostapd
Setting a static IP

Firstly, the server’s Wi-Fi interface wlan0 needs to have a predictable IP address and not try to obtain it from another server. We call this a static IP.

It is defined in the configuration file /etc/dhcpcd.conf, which you can edit through the below command.

sudo nano /etc/dhcpcd.conf

Use the arrow keys to navigate to the end of the file, then copy and paste the following text and press CTRL + X to save and exit. This configuration sets 192.168.4.1 as the IP address of the server on the configured Wi-Fi network. If you want to change this, you will have to be aware of other consequential changes necessary in the remaining part of this tutorial.

interface wlan0
    static ip_address=192.168.4.1/24
    nohook resolv.conf, wpa_supplicant

After installing the new hostapd and dnsmasq packages and setting a static IP, you should reboot the system.

sudo reboot
Configure DHCP and DNS

We create a new configuration file for dnsmasq in the appropriate location and start editing it:

sudo nano /etc/dnsmasq.d/hotspot.conf

Copy and paste the following text, then press CTRL + X to save and exit.

interface=wlan0

# Gateway + DNS server
dhcp-option=3,192.168.4.1
dhcp-option=6,192.168.4.1

# specify the range of IPs that will be handed out
dhcp-range=192.168.4.2,192.168.4.200,255.255.255.0,24h

# Let the Raspberry Pi resolve to all DNS queries
address=/#/192.168.4.1

Next, we need to make sure dnsmasq doesn’t interfere with local DNS requests made from the Pi:

sudo nano /etc/default/dnsmasq

Copy and paste the following text at the end of the file, then press CTRL + X to save and exit.

# do not overwrite /etc/resolv.conf so that local DNS still goes through
DNSMASQ_EXCEPT=lo
Configure the access point

Warning

This will activate a new network configuration and override the possibility to connect to an online source using the Wi-Fi. Connecting to the internet remains possible through the cabled network. The tutorial has a few steps left that require connectivity for downloading and setting up Nginx and Kolibri. If the Pi is online through the Wi-Fi, do not reboot the device or execute the systemctl commands found at the end of this section until at the very end of the tutorial. You should also download and install all necessary software and Kolibri channels.

Tip

We recommend connecting the device to an internet connection through cable (ethernet), such that you have a reliable way of downloading content and software at all times.

You will need to write a configuration file with information about your local Wi-Fi network.

sudo nano /etc/hostapd/hostapd.conf

In the file, copy in the following configuration to specify the name of the network, its Wi-Fi channel (frequency) and bandwidth mode (we recommend 2.4 GHz ‘g’ mode). Set hw_mode=a to use 5 GHz. Press CTRL + X to save and exit.

interface=wlan0
driver=nl80211
ssid=Offline Library
hw_mode=g
channel=7
wmm_enabled=0
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0

# Remove the '#' in front of below lines to set a password 'Password'
# wpa=2
# wpa_passphrase=Password
# wpa_key_mgmt=WPA-PSK
# wpa_pairwise=TKIP
# rsn_pairwise=CCMP

Next, edit /etc/default/hostapd to enable the configuration file that we have just written:

sudo nano /etc/default/hostapd

At the bottom of the file, add the following text and press CTRL + X to exit and save.

DAEMON_CONF="/etc/hostapd/hostapd.conf"

Finally, start the access point system service hostapd and the DHCP and DNS server dnsmasq:

sudo systemctl unmask hostapd
sudo systemctl enable hostapd
sudo systemctl start hostapd
sudo systemctl restart dnsmasq
Setting up a “Captive portal”

You don’t have to set up a “Captive Portal”, but it’s a good idea, since the behavior will make the user experience better. Users won’t have to guess the location (hostname / domain) of services on the Raspberry Pi, and many devices support displaying your welcome page automatically upon connecting to the Wi-Fi.

Hotspot login dialog

This type of dialog will appear on many devices when they detect a successful Wi-Fi connection without an internet connection.

In the previous step, we have configured the Raspberry Pi to tell devices on the local offline hotspot that whatever resource they request such as http://domain.com, it should resolve to the Raspberry Pi’s static IP address 192.168.4.1.

Firstly, install the HTTP server nginx:

sudo apt install nginx

Then, you need to edit and adapt your default Captive Portal page. You can use this template (displayed in the previous screenshot). Copy-paste the contents of the template by editing /var/www/html/index.html:

sudo nano /var/www/html/index.html

You can use CTRL + SHIFT + V to paste text in the terminal. Press CTRL + X to exit and save.

Installing Kolibri
  1. First we need to upgrade the python3-cffi library, which is outdated on Raspbian. Upgrade it like this:

    sudo apt install libffi-dev python3-pip python3-pkg-resources dirmngr
    sudo pip3 install pip setuptools --upgrade
    sudo pip3 install cffi --upgrade
    
  2. Add our Ubuntu PPA with these special instructions:

    sudo su -c 'echo "deb http://ppa.launchpad.net/learningequality/kolibri/ubuntu bionic main" > /etc/apt/sources.list.d/learningequality-ubuntu-kolibri-bionic.list'
    sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys DC5BAA93F9E4AE4F0411F97C74F88ADB3194DD81
    sudo apt update
    
  3. Install kolibri and kolibri-server:

    sudo apt install kolibri kolibri-server
    

    During the installation, make the following choices if prompted: Use the default TCP port 8080 for Kolibri because port 80 will be used by Nginx later in this tutorial. Enable the Kolibri system service by selecting Yes when prompted to run Kolibri on start-up. Use the default pi user so that it will have access to USB devices.

  4. When the command finishes, open the default browser at http://127.0.0.1:8080 and proceed with the Initial Setup of your facility.

Note

The regular Kolibri system service will run background tasks, but its HTTP server is disabled, as all this is handled by the Nginx and UWSGI configuration.

Note

The following issues are quite common on a Raspberry Pi:

  • System time isn’t set properly or resets during power-off. This causes errors while downloading software. For instance, SSL certificates for online sources will fail to validate. Ensure that you have the right timezone in /etc/timezone and that the clock is set properly by running sudo ntpd -gq.

  • Storage space is often scarce. If you have a USB source for additional storage, you can use the kolibri manage movedirectory command or create your own symbolic links to have the data folder located elsewhere.

    Using the built-in management command:

    # Stop kolibri
    sudo systemctl kolibri stop
    # Move the data
    kolibri manage movedirectory /path/to/your/external_drive
    # Start kolibri
    sudo systemctl kolibri start
    
  • I/O operations are slow: This means that a typical bottleneck on a Raspberry Pi is file transfer to/from MicroSD card or USB attached storage. Once Kolibri is up and running, this will not be a bottleneck, but while copying initial contents of several gigabytes, you will experience this. Both the SD card reader and the USB ports will limit you at 50-80MB/sec. From our experience, it doesn’t matter much whether you are using the main SD card reader for storage or some media connected to your USB, as in principle they both reach about the same maximum speeds. However, you may find significant differences in the speeds of individual SD Cards.

    When replicating installations, you can save time if you connect the SD card of USB storage to another device with faster transfer speeds. Replication will be described in future guides.

Set up Kolibri local domain

After completing the installation, you can make kolibri available on port :80 in addition to :8080. This will make it possible to type, for example, a domain kolibri.library in the browser location bar, and because of our captive portal, it will display.

To enable your Nginx web server to serve Kolibri, edit /etc/nginx/sites-available/kolibri and add a so-called virtual host:

sudo nano /etc/nginx/sites-available/kolibri

Tip

You can use another domain name instead of kolibri.library. This is configured in the below configuration.

Copy and paste the following into the configuration file:

server {
  listen 80;
  listen [::]:80;

  server_name kolibri kolibri.library;

  location / {
    proxy_pass http://127.0.0.1:8080;
  }
}

Press CTRL + X to exit and save. Then enable the new configuration by linking it into the directory of enabled virtual hosts:

sudo ln -s /etc/nginx/sites-available/kolibri /etc/nginx/sites-enabled/

Finally, reload Nginx for the new site to be available:

sudo systemctl reload nginx
Uninstall

From the command line: sudo apt-get remove kolibri.

Upgrade

When you use the PPA installation method, upgrades to newer versions will be automatic, provided there is internet access available.

Attaching USB storage

Many people have a 4 GB or 16 GB MicroSD card that came along with the Raspberry Pi. In order to have more content, such as the full Khan Academy, you may want to attach a USB storage media – a flash device or a hard drive.

Tip

Moving content: If you have a USB source for additional storage, you can use the kolibri manage movedirectory command or create your own symbolic links to have the data folder located elsewhere.

Using the built-in management command:

# Stop kolibri
sudo systemctl kolibri stop
# Move the data
kolibri manage movedirectory /path/to/your/external_drive
# Start kolibri
sudo systemctl kolibri start

Or using symbolic links, you need to start and stop Kolibri and to set the permissions correctly:

# Stop kolibri
sudo systemctl kolibri stop
# Relocate the full Kolibri data and configuration user folder
sudo mv /home/pi/.kolibri /your/external/media/kolibri_data
# Ensure that the kolibri system service user owns the folder
sudo chown -R pi /your/external/media/kolibri_data
# Restore the original location with a symbolic link
sudo ln -s /your/external/media/kolibri_data /home/pi/.kolibri
# Start kolibri
sudo systemctl kolibri start
Other tips
Locale warnings

You may encounter warnings like Can't set locale; make sure $LC_* and $LANG are correct! while installing software about the system locale. Typically, these are missing UTF-8 locales for your chosen system locale. These can be fixed by running this from command line:

# Run this and select the appropriate missing UTF-8 locales
sudo dpkg-reconfigure locales
Disabling the graphical desktop

Once the Pi device is deployed, the desktop environment may no longer serve a purpose. It can safely be disabled. This saves computer resources and electricity. Use the following steps to disable or enable the desktop:

# Run the configuration and navigate to the Boot option, selecting "Console"
sudo raspi-config
Remote access

For remote access, you should consider adding SSH (Secure Shell). Once installed and enabled, you can manage the Raspberry Pi without connecting a screen and keyboard and instead logging in from a computer connected to the device through LAN or Wi-Fi. You can use sudo raspi-config to enable the SSH system service. Read more in the official Raspberry Pi docs.

Saving your image for replication

Once you like the setup and you may want to deploy several Raspberry Pis to different schools, classrooms etc.

Tip

Using the same Wi-Fi SSID (in this tutorial, we called it Offline Library) is recommended if you are setting up several Raspberry Pis in the same area. But you should configure them on different Wi-Fi channels. Separate them by a count of 2, this will avoid radio frequency overlaps.

Warning

Replicating the Kolibri device registration will make online synchronization unpredictable (fail).

Kolibri has a sync’ing mechanism whereby user data can synchronize from device to device through an online service. This happens automatically when Kolibri detects an internet connection. You need to unregister (deprovision) your device before copying the SD card and external storage:

kolibri manage deprovision

After replicating your SD card and external storage device, you need re-register the Kolibri installation on each device. This can be done without removing the installed data:

# This will ask you questions
kolibri manage provisiondevice
How many clients are supported?

Tip

We recommend that you do your own benchmarking and share experiences in our Community Forums. See especially this thread about choosing a MicroSD card.

It can be hard to predict how many students will be able to use Kolibri on a Raspberry Pi at the same time. A major bottleneck will be the Raspberry Pi’s built-in Wi-Fi, which might support 5-10 devices in a radius confined by the limited broadcasting power of said Wi-Fi.

The Wi-Fi antenna and chip in the Raspberry Pi do not have capacity for many clients. Thus, you may also want to connect a stronger Access Point. If you intend to do this, you should modify the DHCP server (dnsmasq) to listen to the eth0 device instead of wlan0, switching off the Wi-Fi by removing hostapd.

A Raspberry Pi with 1 GB of RAM may support 10 clients when run behind an access point, but you will likely need a newer Raspberry Pi 4 device if you want to support more than 10 clients.

Next steps

You may also want to install other services such as Kiwix. If you have followed this tutorial, you can install Kiwix alongside Kolibri by downloading the kiwix-serve package and adding an Nginx configuration similar to the one we added for Kolibri.

The Raspberry Pi has the advantages of being low-cost and energy efficient: You can connect it to solar power; you can also implement a good system for distributing software updates and replacement parts through SD Cards and external USB media. Not least, you can make the Raspberry Pi itself a hot-swap element in a setup, such that the whole device is collected and replaced during upgrades. We leave these steps up to you, but please feel free to share your ideas in the Community Forum.

Hard drive provisioning of multiple Kolibri servers

This tutorial will help you to prepare for the Kolibri implementation where you need to install and provision several Kolibri server devices with the same content channels.

Provisioning multiple servers with software and content is going to take some time irregardless of the chosen procedure.

You will need an active Internet connection only to preload content channels on the first server device. Provisioning the rest of the servers can be accomplished offline, or just within the working local network.

Required hardware
  1. Laptops and/or other devices to host Kolibri servers.

  2. For provisioning you have the option to use:

    • Fast USB 3 external drive(s). USB 2 can work too, but we recommend using more than one USB 3 drives for fastest results.

      OR

    • Working LAN (cabled is preferable to wireless, and ideally via a router that supports Gigabit Ethernet).

  3. Active Internet connection to download the installer and preload content channels on the first (“master”) server.

We recommend you install and preload content channels on one server (referring to it as the master for the purpose of this procedure), and then copy the required folder structure to the rest of the devices.

Copying the folders with content from the master server hard drive to others via the USB 3 external drive might be faster, but copying via the cabled LAN connection may be done in parallel (from master to several others at the same time). You can combine these two options for the fastest results, if you have access to both cabled LAN and the USB external drives.

Provision the master server
  1. Install Kolibri on the master server by following the steps for your chosen platform.
  2. Proceed with the Initial Setup of the facility on the master server.
  3. Import the desired content to preload it on the master server.
Kolibri folder structure

At this point you have the master server set-up and preloaded with content. Before you proceed to copy the content and the database to the rest of the server devices, let’s get familiar with the Kolibri folder structure.

  • On Windows, the main server database and all the files related to the content are stored in the folder named .kolibri, located in C:/Users/<username>/.kolibri/ (if your main hard drive is C:).

    <username> refers to the user you were logged in as when you installed Kolibri as explained above. In the image below for example, you can see that the user who installed Kolibri is called IEUser.

    Find the .kolibri folder on Windows.

  • On Linux the .kolibri folder is located inside your user home folder.

    Find the .kolibri folder on Linux.

The content of the .kolibri folder is the same for all platforms. Inside you can see the main database file db.sqlite3, and the subfolder named content which contains 2 subfolders: databases with the separate database for each of the content channels imported into Kolibri, and the storage folder with all the content files and resources.

Find the channel’s databases and content folder.

Prepare the .kolibri folder for copying

Before you proceed to copy the .kolibri folder from the master server hard drive (which already contains content channels), to the rest of the server devices for your deployment, you need to deprovision (that is, empty out) the user database.

Warning

This is a critical step, to ensure that each destination server has a unique Facility ID (and name) associated with it.

  1. Open the Terminal on Linux or the command prompt on Windows.

  2. Stop Kolibri server with the following command

    kolibri stop
    
  3. Follow that with the command to empty the user database.

    kolibri manage deprovision
    

    You will have to confirm twice by typing yes and pressing the Enter key.

Copy the content to other server devices

Warning

  1. Independent from the copying procedure you decide to use, you should first proceed to install Kolibri on each of the destination devices, following the same steps as for the master server, but you don’t need to go through the Initial Setup.

  2. After the installation you must stop Kolibri on the destination device, before you proceed to copy the content.

    • On Windows you need to right-click the Kolibri icon in the Windows taskbar (usually at bottom right, near the clock), and select Exit. You will be prompted to confirm the selection, after which Kolibri will stop.
    When you right click the Kolibri taskbar icon, you can see the taskbar options.

    Stop Kolibri from the taskbar options.

    • On Linux you need to run kolibri stop or sudo service kolibri stop (if you installed Kolibri to run as the system service).
Use the external USB drive to copy content
  1. Copy the .kolibri folder from the master server hard drive, and paste it on the external USB drive.

  2. Copy the .kolibri folder from the USB drive, and paste it inside the destination device hard drive.

    Note

    On Windows you need to copy the .kolibri folder into the C:/Users/<username>/ folder, where the <username> is the account you were logged in as when you installed Kolibri on that destination device (it may be different from the account on the master server). On Linux you need to copy inside the home folder of the user who installed Kolibri, or is the owner of the Kolibri system service.

    Warning

    You should see an alert message that there is already a .kolibri folder on the destination device: choose the option to overwrite it.

Use the cabled LAN connection to copy content
  1. Connect all the devices, master server and the others where you need to copy the content on, to the same local area network (LAN).

    Configure the network access on the master server, so the rest of the devices can:

    • See it among their Network locations in the Windows Explorer
    • Open it and freely browse its shared folders (.kolibri folder should be shared)
  2. Use the Windows or File Explorer on each destination device to copy the .kolibri folder from the master server hard drive, and paste it inside the destination device hard drive.

    Note

    On Windows you need to copy the .kolibri folder into the C:/Users/<username>/ folder, where the <username> is the account you were logged in as when you installed Kolibri on that destination device (it may be different from the account on the master server). On Linux you need to copy inside the home folder of the user who installed Kolibri, or is the owner of the Kolibri system service.

    Warning

    You should see an alert message that there is already a .kolibri folder on the destination device: choose the option to overwrite it.

  3. You should be able to access the master server from several other destination servers through the LAN, and copy the .kolibri folder at the same time.

Restart Kolibri servers on destination devices
  • On Windows double-click the desktop shortcut to start Kolibri after copying content. You will see the notification message Kolibri is starting, please wait…. When you see the next notification that Kolibri is running…, Kolibri will open in the browser with the URL http://127.0.0.1:8080.
  • On Linux open the Terminal and run kolibri start or sudo service kolibri start (if you installed Kolibri to run as the system service).

Since the deprovision command emptied the user database on the master server, you will need to perform the Initial Setup on each destination device to set their Facility name and the super admin account. The Facility name could be the name of the learning center or school in which the respective server will be deployed.

Hardware requirements

To install Kolibri on a device that will act as a server, check the hardware requirements first, and then follow the procedure for the operating system on your device.

Tip

Below you will find general recommendations regarding hardware requirements to run Kolibri. To read more detailed information and find out examples of hardware setups that have been implemented by our users, download the full Kolibri Hardware Guide and examples of Hardware Configurations for Kolibri (PDF documents).

Servers

Minimum hardware requirements to run Kolibri as a server:

  • 500 MB RAM (1 GB recommended on Linux, 2GB or more on Windows devices)
  • 500 MHz CPU (1 GHz recommended)
  • Hard drive space depends on the size of the content channels you intend to import from Kolibri Studio or a local storage device.

If you have a facility with less than 30 computers, a device as simple as a Raspberry Pi is known to work fine as a server.

Clients

Very old desktops and very low-power computers can be used as client devices to access Kolibri. For instance, some implementations are known to use first-gen Raspberry Pi as desktop computers.

It is always a good idea to do a practical test, but when you want to implement Kolibri, usually it’s not necessary to scale your hardware. The main requirement is that your system needs a video card and driver that can play the videos.

Windows

Compatibility
  • Supported: Windows 7, 8.1 and 10, with IE 11+, Chrome or Firefox
  • Not supported: Windows XP cannot be used to install Kolibri server, but could potentially work as a client device if the browsers are as up-to-date as possible.
Install
  1. Download the Windows installer for Kolibri version 0.12.
  2. Double-click the downloaded .exe file.
  3. Select the language for the installation.
  4. Python 3 installer is included, confirm the installation or the upgrade to proceed.
  5. Follow the rest of the instructions in the Kolibri installation setup wizard.
  6. Once the installation finishes, Kolibri will auto-start and open in the default browser on your computer at http://127.0.0.1:8080. This may take a moment, so please be patient.
  7. Proceed with the Initial Setup of your facility.

Warning

Windows firewall will prompt you to allow the Python process needed to run Kolibri. Click Allow access to accept and proceed.

Windows security alert window that opens when Windows firewall needs your permission to allow the Python process, needed to run Kolibri, to be executed on your computer.

Allow the Python process needed to run Kolibri.

Uninstall
  1. Open the Windows Control Panel.
  2. Select Programs and Features option.
  3. Select Kolibri from the list of programs.
  4. Click the button Uninstall/Change and follow the instructions.
Upgrade

To upgrade Kolibri, follow these steps.

  1. Download the new version of Kolibri Windows installer.
  2. Double-click the downloaded .exe file.
  3. Follow the instructions in the installation wizard window.
  4. Once the installation of the upgrade is finished, Kolibri will auto-start and open in the default browser on your computer.
  5. Go explore the new and improved Kolibri features!

Debian/Ubuntu

Compatibility

Debian 8 (Jessie), Debian 9 (Stretch), Ubuntu 16.04+ and up - anything that’s not end-of-life. Ubuntu-based distributions count a number of flavors, for instance Xubuntu and Mint.

Install from PPA repository

In Ubuntu-based distributions, use the following commands in Terminal to add the PPA and install Kolibri:

sudo apt-get install software-properties-common dirmngr
sudo add-apt-repository ppa:learningequality/kolibri
sudo apt-get update
sudo apt-get install kolibri

In Debian-based distributions you need to use these commands to point to our Launchpad PPA:

sudo apt-get install dirmngr
sudo su -c 'echo "deb http://ppa.launchpad.net/learningequality/kolibri/ubuntu cosmic main" > /etc/apt/sources.list.d/learningequality-ubuntu-kolibri-cosmic.list'
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys DC5BAA93F9E4AE4F0411F97C74F88ADB3194DD81
sudo apt-get update
sudo apt-get install kolibri
Uninstall

From the command line: sudo apt-get remove kolibri.

Upgrade

When you use the PPA installation method, upgrades to newer versions will be automatic, provided there is internet access available.

Install from a .deb file

The advantages of downloading a .deb file is the portability: you can copy the file from device to device and install Kolibri without internet access.

  1. Download the latest .deb installer for Kolibri version 0.12, or have it copied to your local drive.

  2. Run this command from the location where you downloaded the DEB file:

    sudo dpkg -i kolibri-installer-filename.deb
    
  3. Wait for the installation to finish and run this command to start Kolibri:

    kolibri start
    

    Note

    If you choose to install Kolibri as a system service, you will not need to start it manually.

  4. When the command finishes, open the default browser at http://127.0.0.1:8080 and proceed with the Initial Setup of your facility.

Uninstall
  • Open Software on Ubuntu and locate the Kolibri. Press Remove.
  • Or from the command line: sudo apt-get remove kolibri.
Upgrade

When you use the PPA installation method, upgrades to newer versions will be automatic, provided there is internet access available.

To upgrade Kolibri on a Debian device without internet access, bring the updated .deb file and follow the same steps as in Install from a .deb file.

Changing the owner of Kolibri system service

The system service is the script that runs Kolibri in the background when your system boots on Debian-based distributions.

You may need to change the system service to run with the permissions of a different user account. Prior to v0.10, kolibri user account was the owner of the system service, while from v0.10 and later, desktop user’s account is preferred, in order for Kolibri to access the local USB storage.

To change the system service owner, you need to change the configuration of the system service: move the .kolibri data folder (containing channels, databases etc.), and assign owner permissions to the new user. Follow these steps.

# Stop Kolibri
sudo systemctl stop kolibri
# Move data to your desktop user:
sudo mv /var/kolibri/.kolibri /home/$USER/.kolibri
# Change ownership
sudo chown -R $USER /home/$USER/.kolibri
# Change the username configuration
sudo sh -c 'sudo echo -n $USER > /etc/kolibri/username'
# Start Kolibri again
sudo systemctl start kolibri

Note

Replace the $USER in commands above with the name of the user you wish to be the new Kolibri system service owner.

Higher Performance with the kolibri-server package

We have of a higher-performance wrapper around the kolibri package for Ubuntu and Debian systems called kolibri-server.

kolibri-server has some specific features like static content cache and optimized usage of the CPU processing power in multi core devices. For example, a Raspberry Pi 3+ device has 4 CPU cores, and with kolibri-server it will likely be able to serve 2-3 times more client devices compared to base Kolibri.

To install kolibri-server follow these steps.

  1. Run these commands in the Terminal:
sudo apt-get install software-properties-common dirmngr
sudo add-apt-repository ppa:learningequality/kolibri
sudo apt-get update
sudo apt-get install kolibri-server

During the installation you will be offered the option to choose the port (8000, 80 or leave the default 8080).

  1. Restart the system.

Warning

Keep in mind that the kolibri-server system performance will depend not only on server device features, but on local Wi-Fi access point characteristics.

Raspberry Pi

Kolibri is tested to work on Raspberry Pi Models 3, 3+, 4 and Zero W. For installation instructions, please refer to our Raspberry Pi Tutorial for Kolibri.

Kolibri may also run on Raspberry Pi Model 2, but the above tutorial was not fully intended for that model, since it does not have onboard Wi-Fi.

Other Linux & MacOS

Compatibility
  • MacOS: 10.6+, all browsers supported
  • Linux: Any system with Python 2.7, all browsers supported
Install

To install Kolibri on Linux distributions other than Debian, as well as on MacOS, you can use generic installation with pip install command, or follow these steps to run Kolibri with the PEX package.

  1. Download the PEX installer for Kolibri version 0.12.

  2. Make sure to open the Terminal where you downloaded the PEX file. For example, if you saved it in the Downloads folder, type this when you open the Terminal, and press Enter:

    cd Downloads
    
  3. Type the following commands next (press Enter after each one).

    chmod +x kolibri-installer-filename.pex
    ./kolibri-installer-filename.pex start
    

    Note

    Make sure to substitute the kolibri-installer-filename.pex with the exact name of the file you downloaded in both commands. For example, if the name of the downloaded file is kolibri-v0.12.0.pex, type that instead of kolibri-installer-filename.pex.

  4. When the command finishes, open the default browser at http://127.0.0.1:8080 and proceed with the Initial Setup of your facility.

Warning

Remember that PEX package allows you to run Kolibri on your system only while the process is active in the Terminal window. If that process is stopped (by either pressing Ctrl + C, closing the Terminal, or restarting your system), you will need to repeat the above steps to start Kolibri again. User accounts, classes and groups you create, as well as the content channels you download, will be available every time you restart Kolibri.

Uninstall
  1. Delete the PEX file.
  2. Delete the ./kolibri folder in your user’s Home directory if you want to completely remove all the Kolibri files and content channels you imported.
Upgrade

To upgrade Kolibri, follow these steps.

  1. Download the new version of Kolibri PEX installer.
  2. Start Kolibri as during the first install.
  3. Go explore the new and improved Kolibri features!

Python pip package

You can install Kolibri as a standard package from PyPi (works on Mac, Windows, and Linux) using this command:

pip install kolibri

Initial Setup

To do the initial setup of your Kolibri facility after the installation, follow these steps.

Note

You need to do the initial setup only once, the first time you start Kolibri after the installation. You can change all the settings later, except the type and the name of the facility.

  1. Select the default language for Kolibri.

    Step 1 of 7 with language options.

    Select the default Kolibri language.

    Warning

    The default language configured for content in your browser preferences might override the language you choose in this step. To ensure that Kolibri displays in the desired language, make sure to configure it as default in the browsers of all the devices that will be used to view Kolibri content.

  2. Facility name and type. A “Facility” is the location where you are installing Kolibri, such as a school, training center, or even your home.

    Non-formal type can be used in libraries, orphanages, correctional facilities, youth centers, computer labs and similar, Formal one in schools and other formal learning contexts, and Personal should work best for parent-child or supplementary individual learning.

    Formal and non-formal facilities require a name, while personal ones do not.

    Step 2 of 7 where you need to choose a type of facility.

    Choose the type of facility.

  3. Guest access.

    Step 3 of 7 where you can allow guests to access Kolibri content without the need to create an account.

    Select if guests can access Kolibri content without the need to create an account.

  4. User account creation.

    Step 4 of 7 where you can permit anyone to create a user account for themselves, or if user accounts must be created by Kolibri admins.

    Select if anyone can create a user account for themselves, or if user accounts must be created by Kolibri admins.

  5. Enable passwords for learners. Simplified sign-in, without the password requirement, allows easier access for younger learners.

    Step 5 of 7 where you can select if learners must type in their passwords to sign-in to Kolibri, or use just their username.

    Select if learners must type in their passwords to sign-in to Kolibri.

  6. Create super admin account. This admin user will be a super admin, able to manage all the device content, and all the rest of the facility users and their permissions.

    Step 6 of 7 is where you select the username and password for the facility super admin.

    Select the username and password for the facility super admin.

    Tip

    Make sure to save these super admin credentials in a safe place!

  7. Data usage and privacy - responsibilities of the administrator. When you are setting up a Kolibri facility, especially in formal contexts, you need to take into consideration the relevant privacy laws and regulations. You as the super admin, or someone you delegate, will be responsible for protecting and managing the user accounts and personal information stored on the device. Review the data usage and privacy statement before finishing the facility setup.

    Step 7 of 7 requires you to review the super admin responsibilities regarding the data usage and privacy.

    Review the super admin responsibilities regarding the data usage and privacy.

Once you finish the initial setup, proceed to import some content, and create users (if you chose the Admin-managed facility setup). Make sure to check how to configure other computers in the network to access Kolibri.

Access Kolibri

Starting Kolibri on Windows

To start the Kolibri server on Windows, just double-click the desktop shortcut. You will see the notification message Kolibri is starting, please wait….

When you see the notification Kolibri is running…, Kolibri will open in the browser with the URL http://127.0.0.1:8080.

Kolibri Taskbar Options

While it is running, Kolibri will display an icon in the Windows taskbar (usually at bottom right, near the clock), that allows you to stop it and configure other settings.

When you right click the Kolibri taskbar icon, you can see the taskbar options.

Kolibri taskbar options.

  • Use the Load in browser option to open Kolibri in the browser.
  • By default Kolibri will start running every time you start the computer where it is installed. Uncheck the Run Kolibri at system startup option if you prefer to start it manually from the desktop shortcut.
  • When installed, Kolibri will open in the browser every time it is started. Uncheck the option Open browser when Kolibri starts if you prefer to have it running in the background, and to open it manually in the browser by typing the URL http://127.0.0.1:8080 in the address bar.
  • Select Exit to stop Kolibri. You will be prompted to confirm the selection, after which Kolibri will stop. You will have to close the browser (or the tab) manually.

Tip

If you close the browser window, Kolibri will still be running in the background. Use the Load in browser menu item to reopen it in the browser.

Warning

In some Windows multi-user environments (for example NComputing), you need to make sure that Kolibri is running only from the admin account to avoid having Kolibri started for each login/session. Confirm that the Run Kolibri at system startup taskbar option is checked only when the admin logs in, but unchecked when any other user of virtual desktops is logged in.

It is also recommended that you remove the Kolibri desktop laucher icon from all non admin accounts in this type of setup, and substitute it with a regular shortcut that opens the Kolibri server IP. To add the desktop shortcut follow these steps.

  1. Right click anywhere on the desktop.
  2. Select New > Shortcut.
  3. Type in the Kolibri server IP (most probably http://127.0.0.1), save and exit.
  4. Double-click the shortcut to test if it opens the browser and loads Kolibri.

Note

Remember to configure other computers in the network to access Kolibri content.

Starting Kolibri on Linux or MacOS

Starting Kolibri on Linux and MacOS will differ depending on the method you used to install it.

  • If you used the PEX package, Kolibri will be accessible as long as the process is running in the Terminal. If you stop the process, close the Terminal window, or restart your system, you will need to run the PEX again to restart Kolibri.

  • If you installed Kolibri as a system service with the DEB installer, it will run automatically on each system restart, and you do not need to start it manually. Proceed to step 2 below.

  • If you installed Kolibri through the PPA, or generic installation with pip install command, follow these steps.

    1. Run this command in Terminal to start Kolibri:
    kolibri start
    

    Warning

    On macOS you may need to prefix the command with python, and type python -m kolibri start instead.

    1. Open the default browser at http://127.0.0.1:8080, and it will display the Kolibri start page.

    Note

    Remember to configure other computers in the network to access Kolibri content.

    1. Run this command in Terminal to stop Kolibri:
    kolibri stop
    

Accessing Kolibri from Other Devices in the Network

After you have installed and started Kolibri on the computer that will act as a server, you need to configure other devices in the the same Local Area Network (LAN), such as other computers, tablets or phones, so they can access the the learning content on the server.

Compatibility

Kolibri currently supports the following combinations of operating systems and browsers for client devices:

  • Windows 7, 8.1 and 10: IE 11+, Chrome and Firefox
  • MacOS 10.6+: Safari, Chrome and Firefox
  • Linux: any browser
  • Android 4.4+: Chrome and Firefox
  • iOS 10+: Safari, Chrome and Firefox

Warning

Videos are MP4 encoded. While most browsers do not require additional plugins or codecs, open source platforms will often require you to install MP4 codecs separately: For instance on Ubuntu, install the restricted extras package.

Set up Access on Other Devices

To access content from other devices in the same network, you need to know the IP address of the computer where Kolibri is running. The default port is 8080, and you must add it after the IP address.

For example, if Kolibri is installed and started on a computer with the address 192.168.8.134:8080, you can access it from an Android tablet connected to the same network by opening the browser on the tablet and typing the address http://192.168.8.134:8080.

Tip

  • You can check the IP (Server URL) of the device where Kolibri is running by going to Info tab in the Device dashboard.

    Open the Device page and navigate to the Info tab to find the IP (Server URL) for your device.

    Find the IP/Server URL in the Device > Info tab.

  • You can also use the ipconfig command on Windows or ifconfig command on Linux/OSX to find the externally visible IP address of the device running the Kolibri.

Warning

  • When entering the URL in the browser, it may be required to explicitly include http://, for example http://1.2.3.4:8080 or http://1.2.3.4:80. Many browsers will incorrectly interpret an IP address or local network hostname as a search term. In other cases, browsers may incorrectly add https:// instead of http://.
  • In case you decide to make Kolibri available on the port 80, instead of the default 8080, you must always include http:// in front of the server’s IP.

Note

Change Language

To change language in which the Kolibri user interface is displayed, follow these steps:

  1. Open your user menu in the upper right corner.
  2. Select the Change language option.
  3. Choose the desired language.
  4. Click CONFIRM and Kolibri will be displayed in the selected language!

Warning

The default language configured in your browser preferences might override the language configured in Kolibri. To ensure that Kolibri displays in the desired language, make sure to configure it as default in the browsers of all the devices that will be used to view Kolibri content.

Manage Kolibri

Default User Roles

Kolibri users by default can be divided in 3 different roles with respective access to features.

Default user roles
Learners can:
  • View content and have their progress tracked
Coaches can:
  • View content and have their progress tracked
  • View Coach dashboard and track progress of other users and usage stats for individual exercises
  • Create/Edit/Delete Groups in Classes and add users to them
  • Create/Edit/Delete Quizzes and assign them to users
  • Create/Edit/Delete Lessons and assign them to users

Facility coaches have access to all classes, class coaches only to ones they are assigned to

Admins can:
  • View content and have their progress tracked
  • View Coach dashboard and track progress of other users and usage stats for individual exercises
  • Create/Edit/Delete other admins, coaches, and learners
  • Create/Edit/Delete Classes and enroll users in them
  • Create/Edit/Delete Groups in Classes and add users to them
  • Create/Edit/Delete Quizzes and assign them to users
  • Create/Edit/Delete Lessons and assign them to users
  • View/Edit Facility configuration settings
  • Export Detail and Summary logs usage data
Kolibri Super Admins

Kolibri super admin users have all device permissions, and are able to assign them to other users. Therefore super admin users can:

  • View content and have their progress tracked
  • View Coach dashboard and track progress of other users and usage stats for individual exercises
  • Create/Edit/Delete other admins, coaches, and learners
  • Create/Edit/Delete Classes and enroll users in them
  • Create/Edit/Delete Groups in Classes and add users to them
  • Create/Edit/Delete Quizzes and assign them to users
  • Create/Edit/Delete Lessons and assign them to users
  • View/Edit Facility configuration settings
  • Export Detail and Summary logs usage data
  • Import/Export Content channels
  • View/Edit Permissions of other users

Tip

If you are unable to retrieve the username and password for a super admin account in your facility, you can create a new super admin account using the command line.

Assign Additional Permissions

By default, only super admin users can view the Device dashboard, import/export Content channels in Kolibri, and modify Permissions for other users. However, depending on the needs of the institution, super admin users can also grant these permissions to other users.

Manage Device

You can manage content and permissions, and view the detailed info of the device where Kolibri is running from the Device dashboard.

Note

To manage device settings you must have the appropriate permissions.

Assign Permissions

You can assign additional permissions to Kolibri users which will provide them access to more features compared to their user roles. To manage permissions for Kolibri users, use the Permission tab in the Device dashboard (Permissions icon).

Open the Device page and navigate to Permissions tab to see permissions for every user
Permission to Manage Content

To grant permission to another user to manage content channels in Kolibri, that is to import, export and delete them from the device, follow these steps.

  1. Click EDIT PERMISSIONS for the chosen user.

  2. Under Device permissions activate the option Can import and export content channels.

  3. Click SAVE CHANGES to apply and finish.

    Use the checkbox to grant the chosen user permissions to manage content

The users who have been granted the permissions to manage content channels will have a black key indicator in front of their name, and will be able to see the Device dashboard with the Channels tab.

Super Admin Permissions

To grant super admin permissions to another user, follow these steps.

  1. Click EDIT PERMISSIONS for the chosen user.

  2. Activate the option Make super admin.

  3. Click SAVE CHANGES to apply and finish.

    Use the checkbox to grant the chosen user super admin permissions

The users who have been granted the super admin permissions will have a yellow key indicator in front of their name, and will be able to see the Device dashboard with both the Content and Permissions tabs.

Users with additional permissions will have icon indicators in front of their username
View Device Info

To view the detailed info of the device where Kolibri is running on, use the Info tab in the Device dashboard (Info icon). This information will be useful in case you need to report an issue with Kolibri on the Learning Equality Community Forums.

  1. Click the Show link to open the Advanced device info.

  2. Make note or copy the following device details to clipboard.

    • Server IP/URL(s)

    • Kolibri version

    • Operating system

    • Installer type

    • Database path

    • Device name

    • Free disk space

    • Server time

    • Server timezone

      Open the Device page and navigate to the Info tab to find out the extended device info.

      Find out the extended device info in the Device > Info tab.

Set Default Language

The language you have chosen during the Initial Setup will be set as the default language for all users who access Kolibri on the server device. You can change the default language for Kolibri from the Settings tab in your Device dashboard (Permissions icon).

  1. Select the desired default language from the drop-down menu. You can set Kolibri to display in the language defined by the browser content settings, or in any of the currently supported languages.

    Open the Device page and navigate to Settings tab to set the default language.

    Manage device language settings.

  2. Click SAVE to apply and finish.

Note

All users will still be able to change to their own language of preference from the user menu options.

Manage Content

Note

To manage Kolibri content channels you must have the appropriate permissions.

Kolibri Content Channel is a collection of educational resources (video, audio, document files or interactive apps) prepared and organized by the content curator for their use in Kolibri. You can import and export content channels in Kolibri from the Channels tab of the Device dashboard (Channels icon).

Open the Device page and Channels tab to see the list of available channels on your device

Kolibri content channels in the Device > Channels tab.

Each Kolibri content channel has its own token/ID in Kolibri Studio. You can freely view and browse content to import from the public channels in Kolibri, but in order to import content from private or unlisted channels, you will need the channel token from the content curator who assembled it.

Note

The term Channel ID was valid for Kolibri versions up to 0.6, while from the Kolibri version 0.7 onward, we started using exclusively the term token to uniquely designate each channel.

Warning

When you use the Terminal or command prompt to import content channels in Kolibri from the command line, you still must use the 32 digit channel ID, as the command will not work with the token. Make sure to receive the correct channel ID from the person who curated the channel you need to import, or refer to Kolibri Studio user guide how to find it in Studio user interface, if you have channel editor access.

Import Content into Kolibri

Warning

Important: You cannot import your own files (videos, documents, etc.) as learning resources directly into Kolibri from your computer. Kolibri can only import content from:

  • already curated content channels on Kolibri Studio, if the computer running Kolibri is connected to internet

OR

  • an external storage drive (USB or hard drive) where content channels have been previously exported to from another Kolibri installation, if the computer running Kolibri is not connected to internet

To import your own files for use in Kolibri, you need to register at Kolibri Studio site (it’s free), and build your own content channel that you can subsequently import into Kolibri. Read more about how to do this in our Kolibri Studio user guide.

Warning

Kolibri database and content may become temporarily unavailable while importing or updating large content channels. Therefore, as a precaution, we recommend you:

  • avoid other interactions with Kolibri (view learner pages or manage users, for example) while content import is in progress
  • perform these maintenance operations outside the periods when system is being used by learners

To import content into Kolibri, follow these steps.

  1. Click IMPORT in the Channels tab on the Device page.
  2. Choose the source option: Kolibri Studio, Local network or internet, or Attached drive or memory card.
Use the radio buttons to select source for importing content

Select a source to import Kolibri content channels.

Import Content from Kolibri Studio

If the computer where Kolibri is running has an Internet connection with the sufficient bandwidth, follow these steps to import content channels.

  1. Choose option Kolibri Studio, click CONTINUE and you will be able to see all the available public content channels.

    Available Channels on Kolibri Studio page where you can select which public channel you want to import content from.

    Select which public channel on Kolibri Studio you want to import content from.

    Channels from which you have already imported some or all content onto your device will have the On your device icon.

  1. Click SELECT for the desired channel, and wait for Kolibri to load the channel information and the topic tree.

    Warning

    This could take some time for big channels. Please be patient, as Kolibri needs to retrieve a lot of information to display.

  2. In the Select content from… page you will see all the details for the selected channel: description, version, total size and number of learning resources, with the information weather you have some of the resources from that channel already imported on the local device.

  3. Under Choose content to import click the topics links to browse through the channel contents. Use the Select all checkbox to import the content channel in full, or select only certain topics or resources. As you keep selecting, you will see the total number and size on disk under Content selected:, and the remaining space on your device.

  4. Click IMPORT once you finish selecting all the desired content.

  5. Wait for the content to be downloaded and click CLOSE for the new channel to appear under the Channel heading.

    Content import progress bar will display the percentage of the download, and the Close button once it's finished
  1. If you need to import content from a private/unlisted channel, click on Try adding the token link above the channel list.

  2. Enter the channel token received from the channel curator on Kolibri Studio.

    Use the text input field to enter channel token in order to import from an unlisted channel
  3. Click CONFIRM to unlock the channel, or CANCEL to exit.

  4. Proceed to select and import channel topics and resources as for the public channels.

    Unlisted or private channels in the list are indicated with the Unlisted channel icon.

  5. To add more learning resources from a channel that you previously imported content from, click OPTIONS, select Import more, and repeat the selection procedure from step 3.

Import Content from a Local Network or Internet

You can also import content from a different device running Kolibri in your same local network, or even from a Kolibri server hosted outside your LAN, provided you know its exact IP address. This feature is useful for when you have:

  • a larger country- or region level Kolibri content server outside your LAN, but with resources specific to your implementation requirements
  • various instances of Kolibri servers in your local network, in order to support a high number of client (learner) devices

Follow these steps to import content channels.

  1. Choose option Local network or internet, and click CONTINUE.
  2. Click New address link to add a new network address.
  3. Input the full network address, and assign a name for this network. Don’t forget to add the correct port if different from the default one 8080. You can use either the IP address or the domain name.
Use the text input fields to add the new address and the name for the local network import
  1. Click ADD to save this address to your device settings. If you later decide to delete it, use the link Forget.
  2. Click CONTINUE and follow the same steps for selecting topics and resources as for the import from Kolibri Studio.

Warning

This feature was introduced in Kolibri version 0.11, and all the server devices to be used for this type of content import must have the Kolibri version 0.11 or later running.

Import Content from a Local Drive

If the computer where Kolibri server is running does not have access to Internet or has insufficient bandwidth, you have the option to receive content channels stored on an external drive (USB stick or hard disk). Follow these steps to import content channels.

  1. Connect the external USB drive to your computer.
  2. Choose option for Attached drive or memory card, and click CONTINUE.
  3. Kolibri will automatically detect and display the drive(s) with available Kolibri content files.
  4. Select the drive where the desired channel is stored, and click CONTINUE.
  5. Click SELECT for the desired channel, and follow the same steps for selecting topics and resources as for the import from Kolibri Studio.
Importing content from a local drive presents the same interface options as importing from Kolibri Studio.
Workaround for import from external drive on older devices

If Kolibri is installed on an older or a low-resource device, you can try the following procedure for importing content channels for faster results.

  1. Stop Kolibri.
  2. Browse the local drive with the file explorer of your operating system.
  3. Copy the content folder located inside the KOLIBRI_DATA folder on the local drive.
  4. Paste the copied content folder inside the .kolibri folder on your hard disk. The location of the .kolibri folder will depend on your operating system (see the table below).
  5. Confirm the merge of the two folders.
  6. Restart Kolibri, and the new channels should now be available.

Beware that the restart might take longer after these steps, as Kolibri needs to map all the new content in the database.

Operating system Location
Windows C:/Users/<your_username>/.kolibri/
OSX HD/Users/<your_username>/.kolibri/
Linux /home/<your_username>/.kolibri/

On Linux and OSX you will need to enable the Show hidden folders option in order to view the .kolibri folder.

Update Content Channels

Public channels on Kolibri Studio are periodically updated from their original sources. Private and unlisted channels that you have on your local Kolibri device may also have changed since you first imported them. You can update your local channels from Kolibri Studio from online sources, from another updated device in your local network or from an external drive where the latest version of the channels has been previously exported.

Warning

Use caution when updating channels that have been used to make currently-active lessons and quizzes. The structure and location of some resources inside the channel may have changed in the updated version, which can cause lessons and quizzes to not load correctly.

Warning

It is recommended to schedule and perform channel updates only during periods of low activity on the server. Updating content while people are using the server may cause errors or performance issues..

To update a channel to its latest version and import new content into Kolibri, follow these steps.

  1. Click OPTIONS for the channel you want to update, and select Import more.

  2. Choose the source option: Kolibri Studio, Local network or internet or Attached drive or memory card.

  3. If there is a new channel version available, you will see the notification.

    Notification for the new version of the content channel.

  1. Click the UPDATE button and wait for the updated topic tree to load.
  2. You will see empty check boxes for any new content added to the channel since your last import. Select and import content by following the steps from Kolibri Studio, local network, or attached drive.
Export from Kolibri to Local Drive

If you have imported content on one Kolibri device, and want to make it available on another computer where Kolibri is installed, follow these steps to export your content channels.

Note

You must have an external drive (SD card, USB stick or hard disk) attached to your device.

  1. Click EXPORT in the Channels tab on the Device page.

  2. Select the local drive (destination for the export) where you wish to export Kolibri content, and click CONTINUE.

  3. In the Export to <name-of-your-drive> page you will be able to see all the available content channels on your device.

    Select from which channel you want to export to local drive.
  4. Click SELECT for the desired channel, and wait for Kolibri to display the channel information and the topic tree.

  5. In the Select content from… page you will see all the details of the selected channel: description, version, total size and number of learning resources.

  6. Under Choose content to export you can browse the channel topics and individual resources. Use the Select all checkbox to import the content channel in full, or select only certain topics or resources. As you keep selecting, you will see the total number and size on disk under Resources selected:, and the remaining space on the destination drive.

  7. Click EXPORT once you finish selecting all the desired content.

  8. Wait for Kolibri to export the selected content and click CLOSE.

  9. Once the export is finished, safely disconnect the drive according to the recommended procedure for your operating system, and proceed to import channels on other devices.

    Note

    This procedure makes a copy of the content folder located inside the .kolibri folder on your hard disk, and places it in the KOLIBRI_DATA folder on the selected local drive. This structure is recognized by the Import from local drive command.

    structure of the local drive folders with exported content channels
Delete Channel

To delete a content channel from your device, follow these steps.

  1. Click OPTIONS for the channel you want to delete.

  2. Select Delete option.

  3. Click DELETE to proceed, or CANCEL to exit without deleting the channel.

Manage Facility

You can edit facility configuration settings in Kolibri from the Settings tab in your Facility dashboard (Settings icon).

  1. Activate the options you want to make available for the users of your facility. You have the possibility to allow users to:

    • edit their full names and usernames
    • sign in without password (except Admin users)
    • download content items (videos, documents, etc.) on their own devices
    • browse content without signing in
    • create accounts on your facility
  2. Click SAVE CHANGES to apply and finish.

    Open Facility page, navigate to Settings tab, and use the checkboxes to activate or deactivate the available options.

    Manage facility configuration settings.

Note

To manage facility settings in Kolibri you must sign in as admin or super admin.

Manage Users

You can search for, filter, add, and edit user accounts in Kolibri from the Users tab in your Facility dashboard (Users icon).

Open Facility page and navigate to Users tab to see the the list of all the users, and access the options to manage them.

Note

To manage Kolibri users you must sign in as admin or super admin.

Create a New User Account

To create a new user account, follow these steps.

  1. Click NEW USER button.

  2. Fill in the required information (name, username, password).

  3. Select the user type (Admin, Coach or Learner).

  4. Click SAVE to add the new user.

Coach Type

When you create a new Coach user account, or change the type (role) to Coach for an existing user, you can choose between:

  • Class coach, that will have access to the coach dashboard and permissions to instruct ONLY the learners in the classes they are assigned to.

  • Facility coach, that will have access to the coach dashboard and permissions to instruct ALL the classes and the learners in the facility.

    Use the radio buttons to choose between class coach and facility coach.
Select Users by Type
  1. Click to open the selector under User type to see filtering options. All users are displayed by default.

  2. Toggle between options (learners, coaches, admins) to display the users according to type.

Edit User’s Account

To edit username, full name or account type, follow these steps.

  1. Click on the OPTIONS button for the desired user and select the Edit details option.

  2. Edit Full name, Username or User type in the Edit user details window.

  3. Click SAVE to update the edited information, or CANCEL to exit without saving.

Reset User’s Password
  1. Click on the OPTIONS for the desired user and select the Reset password option.

  2. Enter the new password in both fields in the Reset user password window.

  3. Click SAVE to confirm, or CANCEL to exit without changing the password.

Delete User’s Account
  1. Click on the OPTIONS for the desired user and select the Delete option.

  2. Click DELETE to confirm, or CANCEL to exit without deleting the account.

Warning

When you delete a user, all their learning records will be erased from the database.

Manage Classes

You can view, create and delete classes, as well as search, filter and enroll Kolibri users in them, using the Classes tab in your Facility dashboard (Classes icon). Default view displays the list of all classes in your facility, with the number of enrolled users for each class.

Open Facility page and navigate to Classes tab to see the the list of all the classes, and access the options to manage them.

Note

To manage Kolibri classes you must sign in as admin or super admin.

Add New Class

To add a new class, follow these steps.

  1. Click NEW CLASS.
  2. Fill in the class name.
  3. Click SAVE to add the new class, or CANCEL to exit.
Delete Class

To delete class, follow these steps.

  1. Click DELETE CLASS for the chosen class from the list.
  2. Click DELETE in the confirmation window to proceed, or CANCEL to exit without deleting the class.

Note

Users enrolled in the class you are deleting will not be removed from the database.

Edit Class, Learners and Coaches

A newly created class does not have any learners or coaches. To edit a class select it from the default view in the Classes tab. In this view, you can change class name, add or remove currently enrolled learners and assign or remove coaches from the class.

New class will have no enrolled learners and no assigned coaches.
Enroll Learners in Class
  1. Click the ENROLL LEARNERS button on the class details page.

    • List in this view contains all the learners currently NOT enrolled for the selected class.
    • You can search for a specific learner by name.
    Class details window in this step displays a list of learners you can add to the class.
  2. Use checkboxes to select all the learners in the list, or the search field for specific learners you want to enroll to class.

  3. Click CONFIRM to finish enrolling the selected learners and return to the main class page.

Remove Learners from Class
  1. Click REMOVE for the chosen learner.

  2. Click REMOVE to confirm, or CANCEL to exit without removing the learner.

Note

Learners removed from the class will not be deleted from the database, and you can still access their accounts from the Users tab in the Facility dashboard.

Assign Coaches to Class
  1. Click the ASSIGN COACHES on the class details page.
  • List in this view contains all the users with Coach, Facility coach or Admin roles.
  • You can search for a specific user by name.
Class details window in this step displays a list of coaches you can assign to the class.
  1. Use checkboxes to select all the users in the list, or the search field for specific users you want to assign as a coach to class.
  2. Click CONFIRM to finish.
Remove Coaches from a Class
  1. Click REMOVE for the chosen coach.
  2. Click REMOVE to confirm, or CANCEL to exit without removing the coach.

Note

Coaches removed from the class will not be deleted from the database, and you can still access their accounts from the Users tab in the Facility dashboard.

Rename Class

To edit class name, follow these steps.

  1. Click on the Edit link next to the class’ name.
  2. Write the new name in the Class name field.
  3. Click SAVE to confirm the edited information, or CANCEL to exit without saving.

Manage Data

You can download Kolibri Detail and Summary logs usage data and export in the CSV format from the Data tab in your Facility dashboard (Data icon).

Open Facility page, navigate to Data tab, and use the Download buttons to save the logs on your local drive.

To download session or summary logs, follow these steps.

  1. Click the Generate log file link for the file you require.
  2. Click the DOWNLOAD button.
  3. Save the generated csv file on your local drive.
  4. To download again after more interactions click the Generate a new log file link.

Note

To manage Kolibri users you must sign in as admin or super admin.

Troubleshooting

Troubleshoot Network Issues
  1. Can you access Kolibri when you type http://127.0.0.1:8080 in the address bar of the browser?

  2. Can you access anything from the external IP of the device running Kolibri FROM the device itself? Read more information about IP addresses.

  3. Can you ping the external IP address from another device on the network? For example, if Kolibri is on a device/computer with IP address 192.168.0.104, type this in the Terminal or Command prompt:

    ping 192.168.0.104
    
Firewalls

If you are having trouble connecting to Kolibri from other computers, your firewall might be blocking access.

Windows systems often come with firewalls bundled and enabled, and this may interfere with running Kolibri. That said, you probably want to keep your firewall enabled for security reasons, especially if the server is connected to the public internet.

You can try temporarily disable your firewall to see if it helps with connecting to Kolibri. If so, you’ll want to turn the firewall back on and then create a exception rule for Kolibri to allow access.

Troubleshoot Database Issues

In case you receive the database disk image is malformed error in Terminal, try running these commands (note that you must have the sqlite3 command available on your system).

mkdir -p malformed
cp -b db.sqlite3* malformed
sqlite3 ~/.kolibri/db.sqlite3 .dump | sqlite3 fixed.db
cp fixed.db ~/.kolibri/db.sqlite3
rm -f db.sqlite3-wal db.sqlite3-shm

For further assistance, please report the issue on our Community Forums, stating the operating system and Kolibri version.

Videos are not playing

Make sure to check the system requirements to see if you can support video playback. Please report any issues on our Community Forums, stating the operating system and browser you are using.

Antivirus

Some overzealous antivirus programs on Windows platform may preventively impede Kolibri or some of its components (for example python.exe) from running correctly. If that happens you need to add them to the antivirus exclusion list. Below steps refer to the program Avast, but should be similar in other antivirus applications.

  1. Open Avast.
  2. Click on Protection in the sidebar.
  3. Click on Virus Chest.
  4. Find the file python.exe in the list.
  5. Right click on the file and select Scan.
  6. If the scan is inconclusive the python.exe file is not infected with a virus.
  7. Right click on the file and select Restore and add to exclusions.
Problems with import and export from USB drives

Kolibri needs read and write access to USB drives in order to import and export content. There are several possibilities why you may encounter issues during this procedure.

  • User account does not have access:
    • you installed Kolibri in your own environment running as a non-desktop user (for instance UWSGI)
    • you have upgraded Kolibri on Debian from a version prior to v0.10. Follow these instructions to change the ownership of Kolibri system service from one user account to another
    • to grant access to USB drives to other accounts, refer to the documentation of your operating system
  • Write access denied: Some USB drives will experience problems when they are unplugged from the computer in an “unclean” way. If you are denied access to write, look for options to “fix” or “repair” the file system.
  • Data failures: Copying the data can take a long time. If you do not see the final success confirmation message after the copy apparently finishes, do not assume that the data has been imported or exported correctly. Restart the process instead, otherwise you risk inconsistent and malfunctioning content data.
  • Hardware life expectancy: SD and flash storage drives can “expire”. Reading and writing large quantities of content data, especially on older or models with smaller capacity, may produce data errors over time.
Locate Kolibri log files

When you report a problem with Kolibri, we may ask you to send us Kolibri log files to help us find out why is it not working or crashing.

Open the .kolibri/ folder inside the Home folder of the Kolibri server and locate the logs/ folder. You will be able to find these two files:

  • kolibri.txt
  • debug.txt

If the problem happened earlier than the dates in the above log, you can open the archive/ folder inside logs/ to find older log files:

  • kolibri-YYYY-MM-DD.txt

Warning

On Linux and MacOS systems you will need to activate the Show Hidden Files option in your file browser, in order to view the .kolibri folder.

About IP addresses
  • 127.0.0.1 IP address, or localhost, is device’s own IP address. You can use it in the browser on the device where Kolibri is running to make sure it is working correctly.
  • Aside from its own localhost address, a device running Kolibri also has an external IP address like 192.*.*.* or 10.*.*.*, under which it is recognized by other devices in the same local network. That is the IP address that you need to use in the browsers on client devices (learner tablets or computers), to connect with Kolibri server.
  • Kolibri by default runs on the port number 8080, but you can change this setting to meet your particular needs.
  • So when you type the full IP address like http://192.168.1.1:8080 in the browser of a client device, you are telling it to: “Connect to IP address 192.168.1.1 on port 8080 with the HTTP protocol, and display its content”.

Advanced Management

Working with Kolibri from the Command Line

  • In Windows you need to open the command prompt, for example by using the WIN + R shortcut, and then typing cmd.

  • On macOS open Spotlight and type Terminal. You may also need to prefix the commands with python -m, for example python -m kolibri start.

  • If you are running Kolibri with the .pex file, make sure to substitute the kolibri in below commands with the exact name of the file you downloaded preceded by ./. For example, to start Kolibri from the downloaded file kolibri-v0.12.pex, type ./kolibri-v0.12.pex start.

Warning

In the commands below, angle brackets and the text between them <...> are used to denote placeholders for you to modify. Make sure to replace them with your own information.

If you see errors in the prompt/terminal output while running the commands below, ask for help at our Community Forums, or file an issue on GitHub.

Start/Stop Kolibri

In case you need to troubleshoot potential problems while running Kolibri, you may try to start it manually from the command line.

kolibri start --debug --foreground
kolibri stop
Import Content Channels from Internet

To import content channels from Internet, run these two commands in sequence. The first downloads the channel database, and the second downloads the resources (videos, documents, etc.).

kolibri manage importchannel -- network <Channel ID>
kolibri manage importcontent -- network <Channel ID>

For example (Channel ID without angle brackets <...>):

kolibri manage importchannel -- network a9b25ac9814742c883ce1b0579448337
kolibri manage importcontent -- network a9b25ac9814742c883ce1b0579448337

Warning

When you import content channels from the command line, you still must use the 32 digit channel ID, as the command will not work with the token. Make sure to receive the correct channel ID from the person who curated the unlisted channel you need to import, or refer to Kolibri Studio user guide how to find it in Studio user interface, if you have channel editor access.

Export Content Channels

To export Kolibri content channels on a local drive in order to share it with another device, run these two commands in sequence. The first exports the channel database, and the second exports the resources (videos, documents, etc.).

kolibri manage exportchannel -- <Channel ID> /path/to/local/drive/KOLIBRI_DATA
kolibri manage exportcontent -- <Channel ID> /path/to/local/drive/KOLIBRI_DATA

The path should be to a folder named KOLIBRI_DATA at the root of the local drive, so it will get picked up later for importing via the Web UI.

Reorder Content Channels

You can set the specific order for content channels in the Learn page according to your preferences. Follow these steps.

  • To view the current ordered list of channels, run the command:

    kolibri manage listchannels
    

    The output will be something like:

    Pos       ID                                      Name
    ---       --                                      ----
    1         95a52b386f2c485cb97dd60901674a98        CK-12 Testing
    2         a9b25ac9814742c883ce1b0579448337        TESSA - Teacher Resources
    
  • To set a position for a channel, run the command:

    kolibri manage setchannelposition <Channel ID> <Pos>
    

    Example with the above channels:

    kolibri manage setchannelposition a9b25ac9814742c883ce1b0579 1
    
    Pos       ID                                      Name
    ---       --                                      ----
    1         a9b25ac9814742c883ce1b0579448337        TESSA - Teacher Resources
    2         95a52b386f2c485cb97dd60901674a98        CK-12 Testing
    
Create a New Super Admin

In case you need to create another super admin user, either to address additional need of managing facility, or if you lost the password for the old one, run the following command.

kolibri manage createsuperuser

You will be prompted to input the Username and Password and the new super admin user account will be created.

Import Users from a CSV File

Note

This is currently an experimental feature, so please forward to the development team any details about the issues you may encounter while using it.

Command works on Kolibri version 0.9 and above.

CSV File Structure

To import users into Kolibri with this command, you will need to provide the user data in a CSV (comma separated values) file format. You can export a CSV file from a tabular data in any spreadsheet program (Excel, Google Sheets, LibreOffice Calc, etc.).

User data in a spreadsheet table

User data in a spreadsheet table.

  • Header row is optional, but if you do not include it, Kolibri will assume that you are providing the data in the following order:

    <full_name>,<username>,<password>,<facility>,<class>

  • If you do include a header row, you can provide less data, or put them a different order:

    <full_name>,<username>,<password>

    <username>,<full_name>

  • Only the username is required.

  • When you do not provide passwords for the imported users, Kolibri will set the default password kolibri for those usernames.

  • The facility can be either the facility name or the facility ID. If you do not provide the facility, Kolibri will import users in the default facility on the device. You can also specify the facility by adding the --facility argument in the command line (see below).

kolibri manage importusers your-csv-file.csv

kolibri manage importusers your-csv-file.csv --facility <your-facility>
Change User’s Password

Run the following command to change the password for a user.

kolibri manage changepassword <username>

You will be prompted twice to input the new password for the user.

Delete Users Permanantly

If you need to permanently delete a Kolibri user and all the data associated with their account, for example to ensure privacy rights according to GDPR, use the following command.

kolibri manage deleteuser <username>

Warning

This will permanently erase all the user data.

Backup and Restore Kolibri Database

Kolibri automatically creates a backup of the database with every version upgrade. If for some reason you need to make a manual backup, use the following command.

kolibri manage dbbackup

This command will create a time-stamped .dump file in the ./kolibri/backups folder that you can use to restore the database with the following command.

kolibri manage dbrestore --latest

To restore the DB from a specific .dump file, use the flag --select to see all that available sorted by date, and select the one you need.

kolibri manage dbrestore --select

Warning

This command is not intended for replication across different devices, but only for restoring on a single device from a local backup of the database.

Change the Location of Kolibri Content Files

Kolibri content channels may occupy a considerable amount of hard disk space over time. If you have concerns about running out of storage on your device, you can move the Kolibri content files to another drive.

Tip

If you have both SSD disk and HDD disk available on your device, it is recommended to install Kolibri on the SSD drive to allow faster access to the database, and move just the content file to the HDD drive.

To move the Kolibri content folders to another location, follow these steps.

  1. Stop Kolibri.
kolibri stop
  1. Create a new folder that will contain all the content files and resources on the destination drive.
kolibri manage content movedirectory <destination>

For example, if you created a new folder KolibriContent on an external drive, run this command.

kolibri manage content movedirectory /mnt/my_external_drive/KolibriContent

If you are on Windows, and the new folder KolibriContent is on the drive F:, run this command.

kolibri manage content movedirectory F:\KolibriContent
  1. Restart Kolibri.

This command will move the 2 subfolders databases and storage, from their default location inside the .kolibri/content folder in your device’s home directory, to a new location you specified in the command.

Change the Location of ALL Kolibri Files

If you want to change the directory where all of Kolibri’s runtime files are located, together with the imported content channels, you need to change the environment variable called KOLIBRI_HOME to the path of your choice.

If the variable is left unset, by default, Kolibri’s runtime files and content will be placed in your user’s home folder, under the .kolibri subfolder.

Note

Adjusting this environment variable behaves differently than the movedirectory command above:

  • Adjusting the environment variable will not automatically migrate over data. You need to copy the .kolibri folder manually to the new location.
  • If you do copy the .kolibri folder, the content will not be affected if it had been previously set using the movedirectory command.

There are many ways to set an environment variable either temporarily or permanently. To start Kolibri on OSX or Linux with a different home, follow these steps.

  1. Stop the server.
  2. Move the .kolibri folder to the new location.
  3. Run the following in Terminal:
KOLIBRI_HOME=/path/to/new/home kolibri start

When you start the server again, all your files should be seamlessly detected at that location.

To change the environment variable KOLIBRI_HOME on Windows, follow these steps.

  1. Stop the server.
  2. Move the .kolibri folder to the new location.
  3. Run the following in Command Prompt:
setx KOLIBRI_HOME "/path/to/new/home"

Restart the server, and your files should be seamlessly detected at the new location.

Alternatively, you can follow these steps in the GUI.

  1. Go to Computer > Advanced System Settings and press the Environment Variables button.

  2. Under User Variables for… press the New… button.

  3. Input KOLIBRI_HOME in the Variable name field, and your new path in the Variable value field, and press OK on both open windows.

  4. Restart Kolibri.

Customize Kolibri Settings with the OPTIONS.INI File

For certain configuration settings you need to use the options.ini file. Installing Kolibri does not generate this file by default, but you can easily add one yourself. Follow these steps.

  1. Open the preferred text editor on your computer (eg. Notepad on Windows).

  2. Write the required sections and keys (see details for available settings below) in the following format:

    [section]
    key1 = a
    key2 = b
    
  1. Save the resulting options.ini file in the .kolibri folder inside the Home folder.

Note

options.ini file can contain several sections with one or more associated keys, depending on the requirements of your installation.

Run Kolibri from a Different Port

If you need Kolibri to start and run from a port different than the default 8080, add the section [Deployment], and the key HTTP_PORT with the value of your desired port, to the options.ini file.

[Deployment]
HTTP_PORT = 1234
# Substitute 1234 with your desired port number

Tip

If after setting the desired port in the options.ini file you still see Kolibri running from a different one, you probably have the environment variable KOLIBRI_HTTP_PORT from a previous installation, which takes precedence. Check the .bashrc file on Linux, or run the set command in Windows command prompt, to verify and correct if necessary.

Allow Profiling of Requests

If you need to profile server requests to get a more detailed information about the Kolibri performance, add the following to the options.ini file.

[Server]
PROFILE = 1

Test Kolibri Server Performance

Benchmark

You can use the following command to collect information about the device where Kolibri server is running, and details about how much of its resources it is using. This command displays a snapshot of the server state at the time the command is executed, and its output will vary depending on the current server load. In case you suspect performance problems, type this in the Terminal or Command prompt.

kolibri manage benchmark

The command will have an output similar to this:

Command line output of the 'kolibri manage benchmark' command

Command line output of the ‘kolibri manage benchmark’ command

Take a screenshot of the Terminal or Command prompt, or copy and paste the output in the community forum post.

Profile

In order to collect more than a current snapshot of Kolibri server performance, you can use the profiling command. When executed, the command will collect a series of performance indicators every 10 seconds and save them in a CSV file. Type this in the Terminal or Command prompt.

kolibri manage profile

Tip

Command collects and saves the information 60 times by default. If you want to change this value, add the --num-samples flag with the desired number at the end.

kolibri manage profile --num-samples=100

Each log line contains this information:

  • Date and time of each command execution
  • Number of Kolibri active sessions (including guest sessions)
  • Number of Kolibri logged users
  • Number of Kolibri user interactions during the last minute
  • Total percentage of CPU use
  • Total memory use
  • Total available memory
  • Number of processes executed in the server
  • Percentage of CPU used by Kolibri
  • Percentage of memory used by Kolibri

To help us troubleshoot potential problems on your Kolibri server, locate and send us the KOLIBRI_HOME/performance/date_time_performance.csv file.

Profile Server Requests

If you have the [Server] section of the OPTIONS.INI file configured with PROFILE = 1, the above command will additionally perform a profiling of every request made by Kolibri server, and save the results in a second log file as KOLIBRI_HOME/performance/date_time_requests_performance.csv

Each log line contains this information:

  • Timestamp
  • Request path
  • Time spent processing the request
  • Memory (in KB) used by the Kolibri process when the request came in
  • Memory (in KB) used by the Kolibri process when the response was sent
  • CPU percentage used by the Kolibri process when the request came in
  • CPU percentage used by the Kolibri process when the request was sent
  • Flag indicating if the request is the slowest one since the analysis started

Warning

Profiling server requests can consume a lot of computer resources, and potentially slow it down. For this reason you need to explicitly allow it in the options.ini file. Without the PROFILE = 1 key, command will not profile server requests (but just the current server state), and it will not create the second CSV file.

Hard drive provisioning for multiple Kolibri servers

For the recommended procedure to install and provision several Kolibri server devices, refer to our hard drive provisioning tutorial.

Coach your Learners in Kolibri

You can track progress of the Learners, create and assign Lessons and Quizzes to classes or learner groups from the Coach dashboard. The default view of the Coach dashboard presents the list of Classes with their assigned coaches, and the number of learners enrolled in each class.

Click on a class to access the progress-tracking features and create lessons, quizzes and groups.

Open the Coach page to view the list of classes

Choose one of the classes from this view to access the Kolibri coach features.

Class Home

On the Class Home tab (Class home icon) you can see the overview of the class activity and track progress of the learners on lessons and quizzes assigned to them.

Open the Coach page to view the list of classes

Class Home presents an overview of learner progress and activity.

Quizzes

You can review the progress of learners on the assigned quizzes in the Quizzes Quizzes block.

  • Progress bar will indicate how many learners have started Started and completed Completed the quiz.
  • You can click on the progress bar to open the complete quiz data in the Reports tab.
  • Click VIEW ALL to access the full list of notifications about quizzes (only the 3 most recent are displayed in the block).

Note

Quizzes were known as Exams in Kolibri versions prior to 0.12.

Lessons

You can review the progress of learners on the assigned lessons in the Lessons Lessons block.

  • Progress bar will indicate how many learners have started Started and completed Completed the lesson, and if they need help Need help with some of the resources in it.
  • You can click on the progress bar to open the complete lesson data in the Reports tab.
  • Click VIEW ALL to access the full list of notification about lessons (only the 3 most recent are displayed in the block).
Class Activity

As learners interact with lessons and quizzes, you can track their progress in the Class activity block.

  • When learners start or complete lessons, you will see one notification displaying the title of the lesson they started Started or completed Completed, and another displaying the title of the specific resource in the lesson they interacted with. In case of quizzes, you will see only the quiz title notification.
  • When multiple learners are working on the same lesson or quiz, you will see a notification like Learner1 and 3 other have started…
  • When learners input multiple incorrect answers to a question in a lesson, the notification in the Class activity block will display that one or more learners need help Need help with a specific resource.
  • You can click each notification link to review the complete resource data in the Reports tab.
  • Click VIEW ALL to access the full list of activity notifications (only the 5 most recent are displayed in the block).

Reports

Reports tab (Reports icon) allows you to gain insight into detailed real-time progress of the learners for single resources in lessons and quizzes assigned to them.

Kolibri presents actionable reports for each lesson and quiz the class learners have been assigned, together with the possibility to observe the progress by groups and individual learners.

Open the Reports tab to track detailed learner progress
Lessons

Open the Lessons sub-tab from the main Reports view to access the progress reports on resources included in each lesson.

  • To review past lessons, use the filter to include only the Inactive lessons.
  • Progress column presents the summary of learners who started Started and completed Completed the lessons, or need help Need help with some of the included resources.
  1. Click on the lesson title to view its list of resources.

  2. In the selected lesson Report sub-tab, you can see the clickable list of resources, with their own progress and the average time spent on.

  3. When you click to open the single resource, you can see the progress report for each learner (started Started, completed Completed or need help Need help), and the time spent on it.

  4. If the resource is an exercise, you can access the Difficult questions sub-tab and review each attempt with incorrect answers.

  5. Open the Learners sub-tab to access the progress report per each learner.

  6. Click OPTIONS button and select Edit details or Manage resources option if you want to edit the lesson directly from its report. Editing the lesson details from here will have the same results as from the Plan tab (Edit icon).

Quizzes

Open the Quizzes sub-tab from the main Reports view to access the progress reports on resources included in each quiz.

  • To review past quizzes, use the filter to include only the Inactive ones.
  • Progress column presents the summary of learners that started Started and completed Completed each quiz.
  1. Click on the quiz title to view its list of resources.

  2. In the selected quiz Report sub-tab, you can see the list of learners, with columns for the progress and obtained score.

  3. Open the Difficult questions sub-tab to view the list of questions learners gave incorrect answers to, and gain insight of how many need help Need help with the concept.

  4. Click a difficult question in the list to review each of the incorrect answers and attempts.

  5. When you click a name of a single learner, you can see the full report for each answer. This can help you understand which questions learners had difficulties answering correctly, and how many attempts they used.

    • green check mark icon indicates the correct answer

    • red X mark icon indicates the incorrect answer

    • gray X mark icon indicates an unanswered question

  6. Click on the attempt icons to see the answers for each one. In the screenshot above learner Abby L. had 3 attempts on Question 8: the first one was incorrect, the second one (selected) was correct, but the third and finally submitted one was incorrect.

    Note

    Review Exercise Progress

    When a learner completes the questions of an exercises, the progress bar below the exercise will show the most recent and correct answers. In order for the exercise to be considered completed, the learner must complete the required number of correct answers (check marks) in the row.

    If the exercise requires 5 correct check marks, learner must provide 5 correct answers one after another. Marks for each answer are located behind the button Check

    The correct answers (green check marks) in the image above are not in a row; this exercise will be completed only after the learner gives 5 correct answers one after another.

  7. Click the OPTIONS button and select Preview or Edit details option if you want to view or edit the quiz details directly from its report. Editing the quiz details from here will have the same results as from the Plan tab (Edit icon).

Groups

Open the Groups sub-tab from the main Reports view to access the reports about the progress in lessons and quizzes per each group. In the main view you can see the table with summary of lessons and quizzes assigned to each group, number of learners and the last activity.

  1. Click on group name to view its detailed progress report.
  2. From the group Reports sub-tab you can click to access each lesson and quiz.
  3. In the Members sub-tab you can view the summary of completed exercises, scores and viewed resources for each group learner, and click to access their full progress report.
Learners

Open the Learners sub-tab from the main Reports view to access the progress report per each learner. In the main view you can see the table with summary of completed exercises, scores and viewed resources for each learner, and their last activity.

  1. Click on learner name to view their detailed progress report.
  2. From the learner Reports sub-tab you can click to access each lesson and quiz.
  3. In the Activity sub-tab you can review their activity on resources assigned.

Plan

Use the options in the Plan tab to create and manage the lessons, quizzes, and groups for the selected class.

Manage Lessons

Kolibri Lessons offer you the possibility to prepare smaller selections of available learning resources and assign them to learners on a temporary basis. You can select resources from multiple channels, and copy the created lessons to other classes or groups as needed.

To view, create or delete lessons, as well as assign them to learners, use the Lessons sub-tab in the Plan tab (Edit icon) of your Coach dashboard. Default view displays the list of all lessons created for the selected class, the number of resources they contain, groups they are assigned to, and their status indicator. You can filter the lessons in order to see all, or just active/inactive ones.

Note

To manage Lessons Lessons in Kolibri classes and groups, you must sign in as coach, admin or super admin.

Create New Lesson

To create a new lesson Lessons, follow these steps.

  1. Click the NEW LESSON button.
  2. Fill in the field for the lesson title, description and choose the group(s) or the entire class as the recipients.
  1. Click CONTINUE. In this step, the lesson does not have any learning resources yet, but you can see and edit some options.
New lesson with no resources added; navigate to Options button and click to open it for more actions.
  1. Click MANAGE RESOURCES and select the content channel from which you wish to select resources for the lesson.
This window presents a list of channels from which you can choose to add resources to the lesson.
  1. Keep navigating the topic tree of the selected content channel until you arrive to single content items. Use the checkboxes to select the resources you want to include in the lesson, and you will see a notification at the bottom of the page that the resource has been added.
  1. Use the Search feature to look for resources about a specific subject. Write the search term in the field, and press the ENTER key or click the Start search button to display the results. When you finish, press the EXIT SEARCH button to return to the list of selected resources.
There are 3 filters available to refine the search; click to open each and select one of the options.

You can filter the search results by type of resource (video, document, exercise…), include only those from a specific channel, or exclude resources for coaches.

  1. Press the FINISH button to close the Manage resources window and return to the main view of the lesson.

  2. After you’ve selected the resources for the lesson, you can:

    • Grab the button to reorder lesson resources with the mouse (drag and drop)

    • Use the Arrow up and Arrow down buttons to reorder by keyboard navigation

    • Click the REMOVE button to delete a resource

    You will see a confirmation notification at the bottom every time you change something in the lesson.

  3. To add more resources to the same lesson and keep editing if needed, follow the steps 4 to 9 again.

Change Lesson Status

A newly created lesson is Inactive by default, meaning that learners will not see it in their Learn view. To change the lesson status, follow these steps.

  1. Select the desired lesson from the list in the Lessons tab.
  2. Click OPTIONS button and select Edit details.
  3. Select Active or Inactive under the Status heading.
  4. Click SAVE CHANGES to confirm, or CANCEL to exit without change.
Change Lesson Recipients

You can change the recipients of the lesson, reassigning the lesson to a different group or the entire class. Follow these steps.

  1. Select the desired lesson from the list in the Lessons tab.
  2. Click OPTIONS button and select Edit details.
  3. Select Entire class or the group(s) of learners to whom you wish to assign the lesson under the Recipients heading.
  4. Click SAVE CHANGES to confirm, or CANCEL to exit without change.
Copy Lesson

To copy a lesson to a different group or another class of your facility, follow these steps.

  1. Select the desired lesson from the list in the Lessons tab.

  2. Click OPTIONS and select Copy lesson.

  3. Select the class to which you wish to copy the lesson to.

  4. If the destination class has more than one group, select Entire class or the group(s) of learners to whom you wish to assign the lesson.

  5. Click COPY to confirm, or CANCEL to exit without change.

If the lesson is copied to another group in the same class, it will appear in the Lessons tab as the Copy of…. Follow the steps in the next heading to rename it.

Rename Lesson

To rename a lesson, follow these steps.

  1. Select the desired lesson from the list in the Lessons tab.
  2. Click OPTIONS and select Edit details.
  3. Change the lesson title in the confirmation window.
  4. Click SAVE to confirm, or CANCEL to exit without renaming the lesson.
Delete Lesson

To delete a lesson, follow these steps.

  1. Select the desired lesson from the list in the Lessons tab.
  2. Click OPTIONS and select Delete.
  3. Click DELETE in the confirmation window to proceed, or CANCEL to exit without deleting the lesson.
Manage Quizzes

You can view, create and delete quizzes, as well as assign them to learners, using the Quizzes sub-tab in the Plan tab (Edit icon) of your Coach dashboard. The default view displays the list of all quizzes in a selected class, with indicators of their visibility status and groups they are assigned to.

Note

To manage Quizzes Quizzes in Kolibri classes and groups you must sign in as coach, admin or super admin.

Create New Quiz

To create a new quiz Quizzes, click the NEW QUIZ button.

  • Fill in the field for the quiz title in the Create new quiz page.

  • Adjust the number of questions you want the quiz to contain. You can use the arrow field value modifiers with the mouse, or - and + buttons if you are using the keyboard.

  • Navigate through the topic tree and activate checkboxes of those exercises you want to include in the quiz.

    As you keep adding and removing the exercises you will see confirmation messages at the bottom.

  • Use the Search feature to look for topics and exercises about a specific subject. Write the search term in the field, press the ENTER key or click the Start search button to display the results.

    There are 3 filters available to refine the search; click to open each and select one of the options.

    You can filter the search results by type of resource (exercise or topic), include only those from a specific channel, or exclude resources for coaches. Click EXIT SEARCH button to return to main quiz view.

  • When you finish selecting resources, click CONTINUE button to preview the quiz.

    Warning

    Beware that if you click the GO BACK button, you will exit the quiz builder and loose the resource selection.

  • You can choose between Randomized and Fixed question order.

    • To present the questions in a different (random) order to each learner, select Randomized.
    • To present the same (fixed) question order to all learners, select Fixed. You can reorder the questions by using the button with the mouse (drag and drop), or with Arrow up and Arrow down buttons if you navigate by keyboard.
  • Use the option Choose a different set of questions to obtain an alternative selection of questions to display.

  • When you are satisfied with the question order click the FINISH button, and you will see a confirmation notification at the bottom.

Change Quiz Recipients

Newly created quiz is by default visible to entire class. To change quiz Recipients, that is select group(s) of learners instead of the whole class, follow these steps.

  1. Select the desired quiz from the list in the Quizzes subtab.
  2. Click OPTIONS button and select the Edit details option.
  3. Select the group(s) of learners to whom you wish to assign the quiz under the Recipients heading.
  4. Click SAVE CHANGES to confirm, or CANCEL to exit without change.
Change Quiz Status

Newly created quiz is by default not active. Once you set the visibility of quiz to the chosen group(s) of learners, you need to Activate it so it can appear in the Learn view of the learners it is assigned to.

  1. Select the desired quiz from the list in the Quizzes subtab.
  2. Click OPTIONS button and select the Edit details option.
  3. Select Active at the start of the quiz period. When the quiz period concludes, select the Inactive option.
  4. Click SAVE CHANGES to confirm, or CANCEL to exit without change.
Copy Quiz

To copy a quiz to a different group or another class, follow these steps.

  1. Select the desired quiz from the list in the Quizzes subtab.

  2. Click OPTIONS and select Copy quiz.

    Use the radio buttons to select the class where you want to copy the quiz to.
  3. Select the class to which you wish to copy the quiz to and click CONTINUE.

  4. If the destination class has more than one group, select Entire class or the group(s) of learners to whom you wish to assign the lesson.

  5. Click COPY to confirm, or CANCEL to exit without change.

If the quiz is copied to another group in the same class, it will appear in the Quizzes tab as the Copy of…. Follow the steps in the next section to rename it.

Rename quiz

To rename quiz, follow these steps.

  1. Click OPTIONS for the desired quiz and select Edit details option.
  2. Change the quiz title in the confirmation window.
  3. Click SAVE CHANGES to confirm, or CANCEL to exit without renaming the quiz.
Delete Quiz

To delete quiz, follow these steps.

  1. Click OPTIONS for the desired quiz and select Delete option.
  2. Click DELETE in the confirmation window to proceed, or CANCEL to exit without deleting the quiz.

Warning

All data from the quiz you are deleting will be lost.

Manage Groups

In case you need to further divide learners inside classes, for example to address the different progress needs, you can use the Groups feature. Create and delete groups, as well as assign learners to them from the Groups sub-tab in the Plan tab (Edit icon) of your Coach dashboard. Default view displays the list of all groups for the selected class, with the number of assigned learners for each group.

Open Coach > Plan page and navigate to Groups tab to view and manage learners and groups.

Note

To manage Kolibri groups you must sign in as coach, admin or super admin.

Create a New Group

To create a new learner group, follow these steps.

  1. Click the NEW GROUP button.
  2. Give group a desired name.
  3. Click SAVE to confirm, or CANCEL to exit without creating a group.
Enroll Learners in a Group
  1. Click to open the desired group in the Groups sub-tab.

  2. Click the ENROLL LEARNERS button.

    • List in this view contains all the learners currently not enrolled in the selected group.

    • You can search for a specific learner by name.

      Open Coach > Plan page and navigate to Groups tab to view and manage learners and groups.
  3. Use checkboxes to select all the learners in the list, or the search field for specific learners you want to enroll in the group.

  4. Click CONFIRM to finish enrolling the selected learners and return to the group page.

Remove Learners from Group
  1. Click REMOVE for the chosen learner.
  2. Click REMOVE to confirm, or CANCEL to exit without removing the learner.
Rename Group

To rename group, follow these steps.

  1. Click OPTIONS button on the right edge of the desired group.
  2. Select the Rename option.
  3. Input the new name for the group in the confirmation window.
  4. Click SAVE button to proceed, or CANCEL to exit without renaming the group.
Delete Group

To delete a group, follow these steps.

  1. Click OPTIONS button on the right edge of the desired group.
  2. Select the Delete option.
  3. Click DELETE button in the confirmation window to proceed, or CANCEL to exit without deleting the group.

Coach Support Resources

Kolibri Studio supports the option to set visibility for any resource added to content channels as a Coach resource. These materials can be lesson plans, professional development readings, training materials, etc. only viewable by coaches and not learners. When content curators set the visibility this way, the resource will not be visible by learners while browsing Kolibri Channels, but only to admins, facility coaches, or other users assigned to coach classes.

However, coach can decide to include any of these resources in lessons or quizzes, in which case they will be visible to learners in the context of that lesson or a quiz.

In Kolibri Studio content curators can set the visibility for a single resource, or for the entire topic.

Setting the visibility of content in Kolibri Studio.

Coach resources and content channels that contain them are marked with the Coach resource icon in Kolibri.

Indicators of the number of available coach support resources for all the channels are visible on the Kolibri Learn page, inside each channel card.

Content channel with 4 support resources for coaches in Kolibri.

Learn with Kolibri

Access Kolibri

Note

  • If you are using Kolibri in your school, education center or facility, your coach or administrator will provide the instructions how to open the sign-in page, and username and password if necessary.
  • If you are using Kolibri on your own, outside an education center or facility, follow the instructions how to Access Kolibri according to your operating system.
  • If you don’t have an account, but Kolibri at your facility or home is set up to allow learners to create their own, follow the steps to create one for yourself.
Sign in to Kolibri

To sign in to Kolibri and start learning, follow these steps:

  1. Type your username and password (may be optional).

  2. Click the SIGN IN button.

    Input your username and password (if required) on the main sign in page.

    Main Kolibri sign in page.

Warning

If you start browsing Kolibri as a guest, you need either to select Sign in option from the Guest menu in the upper right corner, or from the sidebar menu (left or bottom) to open the sign-in page.

Open the sidebar to access the sign in link.

“Sign in” link in the sidebar.

Open the user menu to access the sign in link.

“Sign in” link in the user menu.

Once you have signed in to Kolibri, you can see and edit your user data from the Profile option: access it from the main sidebar menu (below Learn), or from the user menu.

To sign out from Kolibri you can either:
  • Click the user icon in the upper right corner and select Sign out option, OR
  • Select Sign out option in the main sidebar menu.
Create an account

To create your own account on a Kolibri facility and start learning, follow these steps:

  1. Click CREATE AN ACCOUNT button on Kolibri sign in page.
  2. Type in your chosen username and password (twice).
  3. Click the FINISH button.

When page reloads you will see the Learn page with Kolibri channels.

Tip

Make sure to remember your username and password, or save them in a safe place!

Learn with Kolibri

Classes

Each time you login into Kolibri, the first thing you will see is the Learn page with the list of all the classes you are enrolled to.

Select one of your classes to access Lessons and Quizzes teachers or coaches prepared for your class.

In each class you are enrolled to you may find one or more lessons and quizzes.
Channels

Use this tab (Channels icon) to navigate through the complete set of learning topics and materials available in Kolibri. You can browse it as you wish, or according to indications from your teachers and coaches.

Depending on how your school and teachers or coaches decided to organize the content, you may have one or more channels available here. Follow the indications by your teachers or coaches on how to use the content from each available channel.

Content types

You may see different types of content available in Kolibri channels, and you can easily distinguish them by their icons:

  • Videos - Video
  • Exercises - Exercise
  • Documents - Document
  • Interactive HTML Apps - App
  • Topics - Topic

When you start doing an exercise, viewing a video, or reading a document, it will be marked with the In progress icon. Once you finish viewing a video or complete the exercise, they will be marked with the Completed icon.

Progress status for each learning material will be indicated together with their title.

Progress indicator icons for learning resources.

Exercises

Kolibri Exercises can require you to do different things: fill in a missing number, write a formula, choose one of the available options, etc. Each correct answer gets you a check mark, and majority of exercises require 5 correct answers in a row to be completed. Some exercises can offer one or more hints, to help you solve the problem.

Independent of the required action (writing an answer yourself or choosing one of the options), these are the steps to follow.

  1. Read the question carefully.

  2. Write the answer or choose one of the provided options.

  3. When you are ready to submit, click the CHECK button.

    • When the answer is correct and a Correct answer icon appears in the progress bar below the exercise, click the NEXT button to proceed.
    • If the answer is incorrect, read the question again, and try another answer. You can also click the USE A HINT link, read the suggestions, and try to answer again.
    • The progress bar below the exercise is taking into account only the most recent answers you give, which means that you need to have the required number of Correct answer icons in the row for the exercise to be considered completed.
    If the exercise requires 5 green check marks, you must provide 5 correct answers one after another.

    The correct answers in the image above are not in a row; this exercise will be completed only after you give 5 correct answers one after another.

  4. Once you have achieved the required number of correct answers in a row, you will be rewarded points, and see the suggestion to continue. Click the card under the Next resource heading below to continue learning with the rest of the material in that topic.

  5. If you are unable to solve some questions, try reviewing the videos in that same topic, or seek help from your peers or teacher/coach.

Video and Audio Player options

To play videos and listen to audio files in Kolibri you have several available control buttons at the bottom of the player screen. Move the cursor or tap on the player screen to make appear the control buttons while playing.

Kolibri video and audio player.

(controls at the bottom of the player)

  • Play/Pause buttons
  • Rewind/Fast forward buttons by +/- 10 seconds
  • Time tracker indicator with progress bar
  • Video duration indicator
  • Volume scrollbar
  • Playback speed selector
  • Display closed captions (subtitles)
  • Fullscreen button

Use the DOWNLOAD CONTENT button below the player to download the video, audio and thumbnail files to your computer. Some videos will provide multiple resolution options.

PDF Viewer options

Note

Options for viewing PDF files will depend on the browser and operating system you are using to view Kolibri.

  • Use the Enter fullscreen button in the upper right corner to open the ebook in fullscreen view.

  • With the + and - buttons you can zoom the document in and out.

  • Use the Esc key to close the fullscreen view and return.

  • Use the DOWNLOAD CONTENT button below the PDF viewer to download the PDF file to your computer.

Ebook Viewer options

To read digital books in Kolibri you have several available controls inside the reader.

  • Use the Table of content button in the upper left corner to view the table of content with all the book chapters.

  • Click the Ebook settings button to adjust the text size and the background color.

  • If you want to search for a word or a phrase, use the Start search button.

  • Use the Enter fullscreen button in the upper right corner to open the ebook in fullscreen view.

  • Close the fullscreen view with the Esc key.

  • Navigate through the book pages with Previous page and Next page buttons, or with the slider control at the bottom.

  • Use the DOWNLOAD CONTENT button below the viewer to download the ePub file to your computer.

Lessons

Your teacher or coach may prepare a lesson (Lessons icon), a recommended set of learning materials for you or your class to view. You may have more than one lesson available at the time in the Classes tab, below the Lessons heading.

Click on a lesson title to open its content, and follow the indications of your teachers or coaches on how to use it.

Quizzes

If your teacher or coach scheduled an quiz (Quizzes icon) for you or your class, it will be available in the Classes tab, under the Quizzes heading. You may have more than one quiz available at the time.

If the quiz is listed as Not started, follow these steps.

  1. Click on the quiz when you are ready to start taking it.

  2. You can go on answering the questions in the order you prefer: move through questions with PREVIOUS and NEXT buttons, or click on the question number in the column on the left side.

  3. Each time you fill in the answer field, or select one of the available options, the question will be marked by a colored dot in the column on the left side.

  4. You can review and correct your answers to all questions as many times you need before submitting.

  5. Press the Back to quiz list if you want to pause the quiz and come back later.

  6. Press the button SUBMIT QUIZ when you want to submit it for grading.

A quiz that you did not yet submit will be marked with the In progress icon, so you can easily recognize it, and click to resume when you are ready.

Once you complete and submit a quiz, it will be marked with the Completed icon, but you can still click on it to see the score and review your answers.

Tip

Use the Show correct answer checkbox to visualize the answer for the questions that you did not answer correctly.

Frequently Asked Questions

How much does Kolibri cost to install?

Kolibri is free and open source software! To learn more about free software, see this Free Software Foundation article.

Do I need the internet to run Kolibri?

Short answer: No! You can bring or send a storage device (USB or HDD unit) with Kolibri installer and content channels downloaded somewhere with available internet connection, and install everything on an completely offline device.

In a nutshell, Kolibri can run independently of internet availability, but you need to procure the installer and content channels from somewhere for the initial installation and for subsequent upgrades.

One possibility is to have Kolibri installed in one location with internet connection, where you can import content channels from Kolibri Studio (curriculum tool and content curation server), and then export them to removable USB drives that you bring or send to offline locations (rural schools, refugee camps, etc.) to import locally.

What languages is Kolibri available in?

Both Kolibri and Kolibri Studio are translation-ready and currently available in these languages:

Language Kolibri Kolibri Studio
English
Arabic  
Bengali  
Bulgarian  
Burmese  
Chinyanja  
Farsi  
French  
Fulfulde Mbororoore  
Hindi (India)  
Gujarati  
Marathi  
Portuguese (Brazil)  
Spanish (Latin America)
Spanish (Spain)  
Swahili (Tanzania)  
Telugu  
Bulgarian  
Urdu (Pakistan)  
Yoruba  
Vietnamese  

To contribute to Kolibri and Kolibri Studio as a translator, you can get started over on our translations and internationalization page.

What are the typical deployment scenarios?

There is no typical implementation setting. However, we can share with you what we’ve learned from our community of KA Lite and Kolibri users. Some example implementation settings are provided below based on the presence of a coach and whether the settings allows for formal, non-formal, and informal learning.

  Coach No Coach
Formal and Non-Formal
  • School classroom
  • Home schooling
  • Supplementary education setting
  • After school program
  • Supplementary education setting (computer labs model)
  • Use in classroom that has teacher, but without coach engagement or monitoring
Informal
  • Tutoring session
  • Mobile school vans
  • Use for homework only

What are some possible hardware configurations for deploying Kolibri?

To deploy Kolibri for multiple users you will need:

  1. Server device: a computer that is running the Kolibri software (e.g. a desktop computer, laptop, or Raspberry Pi).
  2. One or more client devices that have web browsers (laptops, tablets, desktop computers, etc)

Note

For a single-device deployment (1) and (2) can be the same computer, with the browser connecting to the locally running Kolibri server. To make the software accessible to multiple client devices, you will need to put them on the same local network as the Kolibri server device (1), e.g. through a WIFI access point.

To read more details, see the full Kolibri Hardware Guide and examples of Hardware Configurations for Kolibri (PDF documents).

How can I generate content aligned to local curriculum?

Use Kolibri Studio curriculum tool to curate content channels aligned to your local requirements. Once you finish creating the channels on Studio, you can import them on all your Kolibri deployments for use in learning environments.

Bulk Downloads of Content Channels

Coming soon!

At this time we do not support bulk downloads of content channel outside the Kolibri platform. In the near future, we will consider offering bit torrents for certain global content channels.

Something isn’t working!

Refer to the Troubleshoot and Support section of this guide.

Who maintains the Kolibri project?

Kolibri is created, maintained, and operated by Learning Equality.

How do you operate in the field?

The Learning Equality team primarily works in our San Diego offices, building software and shaping our road map based on our interactions with our partners around the world. We work with individual humanitarians and NGOs of all sizes to help them distribute Kolibri to offline communities around the world, and will work on site for research and training purposes.

What is Kolibri’s affiliation with Khan Academy?

Kolibri is an independent, open-source project maintained by Learning Equality, and is not officially affiliated with Khan Academy, although they are very supportive of the Kolibri project.

Can I contribute to Kolibri as a developer?

Yes! Kolibri is an open source project, and developers are encouraged to contribute!

Can I contribute to Kolibri as a translator?

Yes, absolutely! To contribute to Kolibri and Kolibri Studio as a translator, you can get started over on our translations and internationalization page.

How do I find out more about Learning Equality and Kolibri?

To stay up-to-date on all our activities, follow our blog, Twitter, and Facebook!

Get in touch

Getting support from Learning Equality and our community

Due to the open-source nature of our work, we encourage that all inquiries, inputs, contributions and feedback are openly shared in our Community Forums, so that any user with similar questions to yours can benefit from the answer, and have a centralized place to search for it. Please consider supporting others whenever you can. Your goals are likely overlapping with other users of Kolibri, so you may consider yourself as part of a community of like-minded practitioners!

The first thing you need to do is register on the forum. Once registered, please read the the first two pinned topics (Welcome to LE’s Support Community and How do I post to this forum? )

You can add a new topic with the + New Topic button on the right. Make sure to select the appropriate category in the Create a New Topic window to facilitate the triage and response processes.

add new topic on community forums

Feedback

New ideas

Until we can present a proper feedback platform, we encourage you to post any new ideas to the Community Forums.

Technical issues

Try reading the Troubleshooting section of this guide first.

In order to report a technical issue, you can either use the Support category in our forum, or open up an issue report in our public software repository, following the guidelines:

github.com/learningequality/kolibri

Contributions and development

Kolibri is an open-source project, and as such, contributions from the tech community are welcomed, encouraged and appreciated. If you’d like to contribute to Kolibri, please refer to our developer docs:

kolibri-dev.readthedocs.io