A collection of tools to simplify working with Moodle quizzes.
Project description
Moodle Tools
This repository contains a collection of tools to simplify working with Moodle quizzes.
Tools
make-questions: Generate Moodle quiz questions from simple YAML documents to minimize the use of the web interface.analyze-results: Analyze the results of a Moodle quiz to improve question quality.
Installation
moodle-tools is distributed as a Python package.
You can install it from PyPI using pip:
pip install moodle-tools
Local Installation
Either clone the repository:
git clone https://git.tu-berlin.de/dima/moodle-tools
cd moodle-tools
python3 -m venv venv
source venv/bin/activate
pip install .
Or directly install it from GitLab:
pip install git+https://git.tu-berlin.de/dima/moodle-tools
Optional Question Types
Specialized question types that require additional dependencies are not installed by
default. To use them, you need to install the respective dependency group with
pip install "moodle-tools[GROUPNAME]". The following groups are available:
isda: Adds support forCoderunnerDDLQuestion,CoderunnerDQLQuestion, andCoderunnerStreamingQuestionquestions.
For example, to install the isda questions execute:
pip install "moodle-tools[isda]"
Usage
Once installed, you can access the tools as Python modules or via their command line interface.
from moodle_tools import make_questions, analyze_results
make-questions -h
analyze-results -h
Documentation
The API documentation of
moodle-tools is hosted on GitLab pages.
Contributing
If you want to contribute a bug fix or feature to moodle-tools, please open an issue
first to ensure that your intended contribution aligns with the project.
Different to a user installation, you also need to install the dev requirements and
activate pre-commit in your copy of the repository before making a commit.
# Activate your virtual environment first
pip install -e ".[dev]"
pre-commit install
The source code for Moodle's XML parser is located here in case we need to reverse engineer behavior changes.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file moodle_tools-1.1.0.tar.gz.
File metadata
- Download URL: moodle_tools-1.1.0.tar.gz
- Upload date:
- Size: 2.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ab18a7dc64008dbdc168081632e5031c6a1557ee86371c176e02b1506335861
|
|
| MD5 |
e98bc4519bc8edc1b4f19b3b97d6fef0
|
|
| BLAKE2b-256 |
4c18efea415301737e1238954e27a51e27dc18ef2ea67c84456bdeb8f664814e
|
File details
Details for the file moodle_tools-1.1.0-py3-none-any.whl.
File metadata
- Download URL: moodle_tools-1.1.0-py3-none-any.whl
- Upload date:
- Size: 58.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
791fa110275633da6cb741aa2338e96ff91a739acfcc6eae7970101f6b9acf03
|
|
| MD5 |
ac0a7a0269d73712c56d8c786ea2af4a
|
|
| BLAKE2b-256 |
1620af3378a802b168f8edfcad336befde460b22b446c6154fdb2f976cb9dd9b
|