Skip to main content

OpenZIM export command for ka-lite

Project description


.. image::

.. image::

OpenZIM export command for ka-lite.

Quick Start

You should use our docker : openzim/kalite. (Without docker see at end of README.rst)
docker run -v [your folder here]:/data openzim/kalite kalite manage export2zim /data/[zim name].zim [--language=[code lang]] --tmp-dir=/data/[tmp folder name] --download

For exemple :
docker run -v /tmp:/data openzim/kalite kalite manage export2zim /data/ka-fr.zim --language=fr --tmp-dir=/data/ka-lite-zim_fr --download

You can found [code lang] here in the tab : `List of languages <>`

Your zim will be at : [your folder here]/[zim name].zim

Interact with kalite
If you run docker interactively with "-ti":
you can launch export script with ``kalite manage export2zim``

Don't forget ``--download`` options if you haven't video in your ``~/.kalite`` cache

Usage is available at ``kalite manage help export2zim``

**Beware!** Despite what usage/help says, the proper parameter order is ``zim_file`` first then options. Example: ``kalite manage export2zim ka-fr.zim --language=fr``


* Exporting the contents of a local `KA Lite <>`_ installation to the `OpenZim <>`_
* Easy to customize since you use KA Lite to select and download videos
* Creates a .zim file with a single-page webapp containing video player and simple JS-based UI for filtering and searching the videos

Use case and contributions

This project is a Python project but is NOT on PyPi because it's not intended
for a wider audience. So just get the latest master, it should work with the
latest KA Lite release. Please contribute to this project if you have changes to the .zim files that
are available on the `Kiwix website <>`_

The goal of this command is to build an alternative use case of Khan Academy for
the popular offline reader Kiwix, which works for the open standards format
OpenZim. Thus, it can benefit from the data prepared through the KA Lite

While KA Lite is truly built for education, Kiwix is more of an eLibrary. While
Kiwix and OpenZim is more static, KA Lite has its focus on interaction.


The export command for KA Lite is the immediate and easiest target. But we hope
to be able to understand the OpenZIM format well enough to build an import
command as well such that KA Lite students can interact with the data packaged
and distributed by zim-packagers.

Without docker
You can also use virtualenv but it's harder...because current code base is tied to version 0.15.1 of KA-Lite which fails to install from non-prehistoric pip, so we use prehistoric pip in virtualenv.


virtualenv -p /usr/bin/python2.7 kalite-env
source kalite-env/bin/activate

mkdir -p ~/.kalite
echo "from kalite.project.settings.base import *" >> ~/.kalite/
echo "INSTALLED_APPS += ['kalite_zim', 'compressor',]\n" >> ~/.kalite/
pip install django>=1.5,<1.6
pip install pip==7.0.0
pip install setuptools==12.0
pip install ka-lite==0.15
pip install ka-lite-zim

**Note**: if using the Docker ``zimwriterfs``, make sure to work off the same absolute path of your docker volume (/data for example) for symlinks can be resolved.
See "Interact with kalite" section for how using it.


ln -s /data/ /home/user/kalite
kalite manage export2zim /data/ka-fr.zim --language=fr --tmp-dir=/data/ka-lite-zim_fr
docker run --name zimwriterfs -v /data:/data openzim/zimwriterfs zimwriterfs XXX


The full documentation is at


0.1.0 (2016-01-04)

* First release on PyPI.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
ka_lite_zim- (520.7 kB) Copy SHA256 hash SHA256 Wheel py2.py3
ka-lite-zim- (482.0 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page