Skip to main content

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 for CoderunnerDDLQuestion, CoderunnerDQLQuestion, and CoderunnerStreamingQuestion questions.

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

moodle_tools-1.1.0.tar.gz (2.4 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

moodle_tools-1.1.0-py3-none-any.whl (58.2 kB view details)

Uploaded Python 3

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

Hashes for moodle_tools-1.1.0.tar.gz
Algorithm Hash digest
SHA256 2ab18a7dc64008dbdc168081632e5031c6a1557ee86371c176e02b1506335861
MD5 e98bc4519bc8edc1b4f19b3b97d6fef0
BLAKE2b-256 4c18efea415301737e1238954e27a51e27dc18ef2ea67c84456bdeb8f664814e

See more details on using hashes here.

File details

Details for the file moodle_tools-1.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for moodle_tools-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 791fa110275633da6cb741aa2338e96ff91a739acfcc6eae7970101f6b9acf03
MD5 ac0a7a0269d73712c56d8c786ea2af4a
BLAKE2b-256 1620af3378a802b168f8edfcad336befde460b22b446c6154fdb2f976cb9dd9b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page