Blackboard to Moodle migration library¶
This library provides means to read Blackboard course archive and write moodle course backup, as well as translation utilities between these two formats.
This library is part of a broader project which goal is to provide an easier way to migrate Blackboard course to Moodle course.
Tip
For more details about each module go into its directory and start with the readme. Documentation is available and deployed on https://bb2mdl.gitlabpages.uliege.be/bb2mdl/.
Modules¶
Blackboard archive¶
bb_archive
provides Blackboard dataclasses that can be filled with a Blackboard course
archive.
Translator¶
translator
provides various configurable translator capable of converting from the Blackboard
dataclasses to the Moodle representation.
Moodle archive¶
mdl_archive
provides Moodle dataclasses and is able to output the XML in the Moodle backup
format.
Orchestrator¶
orchestrator
provides interfaces to manage the end-to-end process of transforming a Blackboard
course to a moodle course archive.
Hacking¶
Dev environment¶
Clone the repository including submodules --recurse-submodules
,
if you have already cloned it, you can run instead:
You can set up your development environment with poetry which has great doc and is easy to use:
Tu run commands like black or pytest you can then use the run
command and if you want to activate the environment use shell
:
Coding style¶
We are using black to enforce coding style. And a pre-commit is available, just install it with:
Documentation¶
To generate the documentation locally, you can build it with mkdocs.
Tests¶
Pytest is used for unit-testing the various modules. The translator use it in combination of hypothesis to generate random data and test translation invariants independently of data.
Your editor is probably already compatible with pytest, however with the command line you can run:
--hypothesis-explain
to explain why a hypothesis tests is failing, it will display a minimal failing example.