Get Khan Academy exercise resources for offline addition to Kolibri


I’m trying to use Ricecooker to pull classes from Khan Academy. However, I want to be able to store the data that Ricecooker retrieves locally on my computer, and then be able to manually send this information to Kolibri without needing Internet connection. I am in particular trying to figure out how to keep the raw json information associated with Khan Academy exercises.

Can someone help point me in the right direction?


Hi @cat,

Thanks for your interest in Kolibri! We have put a lot of work into downloading and packaging Khan Academy resources for use in Kolibri, so I’d highly recommend using our already created Khan Academy channels for pulling in this resources into your Kolibri instance.

At the moment, Ricecooker is designed for creating channels on the Kolibri Studio platform, and not for directly creating them on Kolibri itself. We do have plans underway to allow the import of locally generated content into Kolibri, but the focus there is largely on doing that via the user interface, rather than offering a Ricecooker compatible API.

Is there something missing from our Khan Academy channels that you were trying to access?

Kind Regards,

Hi @richard ,

Thanks for the information! What I’m trying to do is grab information from Khan Academy (specifically exercise information in its JSON/Perseus format) and intercept it before it is sent to a Kolibri Studio channel (if it can’t be sent directly to Kolibri offline).

I would suggest just accessing the Khan Academy API rather than using Ricecooker for this. I would also note that the Khan Academy Perseus exercises are not under a Creative Commons license, unlike the Khan Academy videos, and we have been granted specific permissions to distribute them with Kolibri - so please be aware of this if you are seeking to redistribute them.

Just taking a step back here to see if I understand the underlying need. What I’m hearing is that you want to load Khan Academy exercises onto an offline Kolibri installation. Unless you’re looking to load exercises that don’t already exist in the Kolibri Content Library (in the KA channels), you shouldn’t need to involve ricecooker.

If the above is an accurate description of your need (basically, that you need to load things into an offline instance of Kolibri, and hence just can’t import directly from Studio), here’s a workflow:

  • Download the desired content from Studio into an installation of Kolibri that has Internet access, first.

Then, depending on which is more convenient for your case, either:

  1. Export the content from that installation of Kolibri to a USB drive, and then import from that USB drive into Kolibri on the offline server, OR
  2. Bring the computer with the content downloaded to where the offline Kolibri is, connect them over a local network, and do a peer import on the target computer from the peer on the local network.

Please let us know if that addresses the need or if you were looking for something else!