How to use innoConv

The principle way of using innoConv is the CLI innoconv. Another option is to use innoConv in a programmatic way as Python library.

Run the converter on your content directory.

$ innoconv /path/to/my/content

This will trigger a conversion and store the result in a folder innoconv_output. A return code other than 0 indicates an unsuccessful run.


According to Unix convention you will not see any messages if the conversion was successful. Though you might pass the --verbose flag to change this behavior.

Command line arguments


Converter for interactive educational content.



-o, --output-dir <output_dir>

Set output directory. [default: ./innoconv_output]

-e, --extensions <extensions>

Enable extensions (comma-separated). [default: copy_static,generate_toc,index_terms,join_strings,number_boxes,tikz2svg,write_manifest]

-f, --force

Force overwriting of output.

-v, --verbose

Print verbose messages.


Show the version and exit.



Required argument

Using innoConv as a library

Using innoConv within a Python program involves creating a Manifest object and using it with a InnoconvRunner.

>>> manifest = Manifest(manifest_data)
>>> runner = InnoconvRunner(source_dir, output_dir, manifest, extensions)

Have a look at the source of innoconv.cli for a more detailed example.