Skip to content

A library to convert Common Cartridge Courses to OLX.

License

Notifications You must be signed in to change notification settings

FahadKhalid210/cc2olx

 
 

Repository files navigation

cc2olx

https://github.com/openedx/cc2olx/workflows/Python%20CI/badge.svg?branch=master

cc2olx is a converter of Common Cartridge .imscc files into .tar.gz files that can be imported into Studio.

What is supported

Converted:

  • HTML
  • Web links
  • Some videos
  • LTI links
  • QTI assessments

Not converted:

  • Images

Install

Clone repository and install via setup.py:

python setup.py install

Use

The converter is a command-line Python 3 program.

To convert one file:

cc2olx -i <IMSCC_FILE>

This will write a .tar.gz file into the tmp directory here.

To store all results in zip file:

cc2olx -r zip -i <IMSCC_FILE>

An embeded video in an iframe tag in HTML can be converted to it's corresponding video xblock if we provide a link map file to it.

The CSV file should have the following header:

External Video Link, Edx Id, Youtube Id

Either Edx Id or Youtube Id should be be present. In case both of these are given Edx Id takes priority.

The link map file can be supplied using -f or --link_file:

cc2olx -r zip -i <IMSCC_FILE> -f <CSV_FILE>

Test Data

There are some test imscc files in test_data directory, but if you can also try cc2olx on some larger courses:

To Do

We would love help building out this tool. If you can help, either with development, or with real-world testing, please submit pull request or open new issue.

Work that needs to be done:

  • Test on real courses
  • Clean up the code
  • Add support for more Common Cartridge content
  • Write more documentation

Video Upload Tool

  • The cc2olx repository also has a video upload tool that can be used to upload videos to directly to edX's video encoding pipeline. See the tool's README :ref:`video_upload_tool`. for a further details.

About

A library to convert Common Cartridge Courses to OLX.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 94.7%
  • HTML 3.1%
  • Makefile 2.2%