Skip to main content

A package for converting questions from a spreadsheet, to valid moodle-xml

Project description

excel 2 Moodle

Logo{width=35%}

excel2moodle helps to create Moodle questions in less time. The idea is to write the questions data into a spreadsheet file, from which the excel2moodle generates moodle compliant xml Files. All questions or a selection of questions can then be imported into moodle.

Concept

At the heart the excel2moodle is a simple key-value-pair "syntax", where the key is set once in the first spreadsheet column. Each key can be provided with a value for each question in its column To enhance reusability, key values which are correct for more than one question can be set per category or for all questions. The concept is, to store the different questions into categories of similar types and difficulties of questions, for each of which, a separated sheet in the Spreadsheet document should be created.

A settings sheet contains global settings to be used for all questions and categories. Another sheet stores metadata for the different categories of questions. And each category lives inside a separate sheet inside the spreadsheet document.

Getting Started

Installation

To get started with excel2moodle first have a look at the installation If you already have python and uv installed, it is as easy as running uv tool install excel2moodle.

Documentation

Once excel2moodle is installed you can checkout the example question sheet in the repository. You need to download all Files in the example directory and save them together.

Most steps are already documented as tutorials you can follow along.

And please have a look into the user Reference of the documentation. That part explains in more detail each part of defining a question.

Features

  • Fully parametrized numeric questions:
    • Formulas for the calculated results can be coded into extensive python modules, which can be loaded.
  • Question Preview:
    • This helps you when selecting the correct questions for the export.
  • Equation Verification:
    • this tool helps you to validate the correct equation for the parametrized Questions.
  • Variable Generation:
    • You can generate variables for the parametric Question to easily create hundreds of different variants of the same question.
  • Export Options:
    • you can export the questions preserving the categories in moodle

Question Types

  • Generate multiple Choice Questions:
    • The answers can be pictures or normal text
  • Generate Numeric Questions
  • Generate parametrized numeric Questions:
    • With the parametrization excel2moodle calculats the numeric answer from a given formula based on a set of variables.
  • Generate parametrized cloze Questions

MainWindow{width=80%}

Licensing and authorship

excel2moodle is lincensed under the latest GNU GPL license Initial development was made by Richard Lorenz, and later taken over by Jakob Bosse

Supporting

A special thanks goes to the Civil Engineering Departement of the Fachhochschule Potsdam where i was employed as a student associate to work on this project.

If You want to support my work as well, you can by me a coffee

Changelogs

0.7.1 (2025-10-04)

feedbacking improved

documentation (1 change)

feature (1 change)

0.7.0 (2025-09-30)

Rework of the equation checker done!

feature (1 change)

documentation (1 change)

improvement (1 change)

0.6.5 (2025-09-02)

Added Scripted Media Support now with the module

No changes.

0.6.4 (2025-09-02)

Added Scripted Media Support

feature (1 change)

0.6.3 (2025-08-03)

Lots of small improvements made

improvement (3 changes)

bugfix (3 changes)

feature (2 changes)

0.6.2 (2025-08-02)

Adding export options and fixing cloze points bug

feature (4 changes)

improvement (1 change)

bugfix (1 change)

0.6.1 (2025-07-12)

Fixing import error caused by dumping pyside meta package

bugfix (1 change)

0.6.0 (2025-07-12)

Added variable generator and other architechtural improvements

documentation (1 change)

feature (5 changes)

improvement (7 changes)

0.5.2 (2025-06-30)

Extended Documentation and bugfix for import Module

bugfix (2 changes)

documentation (1 change)

feature (1 change)

improvement (1 change)

0.5.2 (2025-06-30)

Extended Documentation and bugfix for import Module

bugfix (2 changes)

documentation (1 change)

feature (1 change)

improvement (1 change)

0.5.1 (2025-06-24)

Minor docs improvement and question variant bugfix

bugfix (1 change)

0.5.0 (2025-06-20)

settings handling improved

feature (2 changes)

improvement (1 change)

Settings Errors are logged (1 change)

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

excel2moodle-0.7.1.tar.gz (73.2 kB view details)

Uploaded Source

Built Distribution

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

excel2moodle-0.7.1-py3-none-any.whl (81.4 kB view details)

Uploaded Python 3

File details

Details for the file excel2moodle-0.7.1.tar.gz.

File metadata

  • Download URL: excel2moodle-0.7.1.tar.gz
  • Upload date:
  • Size: 73.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for excel2moodle-0.7.1.tar.gz
Algorithm Hash digest
SHA256 23c200b43423d9cde2f223c7c14ce3b57b1930a8a4fb1fbcef02fa9f1aab42d4
MD5 9688baa4cf66e135fd59654d96130eb9
BLAKE2b-256 f9f9a617fbb797f617aa2b7196a77730ee5b9cecf78ebae77432c9dbea200b6b

See more details on using hashes here.

File details

Details for the file excel2moodle-0.7.1-py3-none-any.whl.

File metadata

  • Download URL: excel2moodle-0.7.1-py3-none-any.whl
  • Upload date:
  • Size: 81.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for excel2moodle-0.7.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e6019236fb990c748182e06f950b58bb20d54b49da645ca364f8c4c997a48c53
MD5 95db4d74acba2bc719de3f9067be9880
BLAKE2b-256 fff912fc86aa5ac6e6aff29ea5102c980636da7aaa27fb5e000a267c544f774c

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