A suite of CLI tools and Python library interfacing with Learning Management Systems (LMSs).
Project description
LMS Tools
A suite of tools and Python interface for different Learning Management Systems (LMSs).
This project is not affiliated with any LMS developer/provider.
Documentation Table of Contents:
Installation
The project (tools and API) can be installed from PyPi with:
pip install edq-lms-toolkit
Standard Python requirements are listed in pyproject.toml.
The project and Python dependencies can be installed from source with:
pip3 install .
Cloning
This repository includes submodules.
To fetch these submodules on clone, add the --recurse-submodules flag.
For example:
git clone --recurse-submodules git@github.com:edulinq/lms-toolkit.git
To fetch the submodules after cloning, you can use:
git submodule update --init --recursive
Usage Notes
Name Resolution and Labels
The LMS Toolkit is able to resolve most objects that have a name, so you can refer to that object by name instead of by ID. Fields with this resolution will be referred to as "queries". The exact attributes that can be used as a query depend on the underlying object, for example users can use their name or email in a user query.
A "label" is a formatted field that the LMS Toolkit will use in certain cases that includes both the name and id in a single field: "name (id)".
For example, a user may be identified by any of the following:
| Query Type | Query |
|---|---|
sslug@test.edulinq.org |
|
| Name | Sammy Slug |
| ID | 123 |
| Label (Email) | sslug@test.edulinq.org (123) |
| Label (Name) | Sammy Slug (123) |
Output Formats
Many commands can output data in three different formats:
- Text (
--format text) -- A human-readable format (usually the default). - Table (
--format table) -- A tab-separated table. - JSON (
--format json) -- A JSON object/list.
CLI Tools
All CLI tools can be invoked with -h / --help to see the full usage and all options.
List Course Users
Course users can be listed using the lms.cli.courses.users.list tool.
For example:
python3 -m lms.cli.courses.users.list
Get Course Users
To fetch information about course users, use the lms.cli.courses.users.get tool.
For example:
python3 -m lms.cli.courses.users.get sslug@test.edulinq.org
Any number of user queries may be specified.
List Assignments
Course assignments can be listed using the lms.cli.courses.assignments.list tool.
For example:
python3 -m lms.cli.courses.assignments.list
Get Assignments
To fetch information about course assignments, use the lms.cli.courses.assignments.get tool.
For example:
python3 -m lms.cli.courses.assignments.fetch 'Homework 1'
Any number of assignment queries may be specified.
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 edq_lms_toolkit-1.0.3.tar.gz.
File metadata
- Download URL: edq_lms_toolkit-1.0.3.tar.gz
- Upload date:
- Size: 39.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
265f7c0db4bc1b3c28d431c4d689485c5221bd95bfcd7d0487049135c0b76505
|
|
| MD5 |
73d3ff6bf6dd727361c07a0ceb185436
|
|
| BLAKE2b-256 |
9049f0e4d0cc9f12b705dbf9b3e199e55fe448997b032feadafaeb5be5924ab1
|
File details
Details for the file edq_lms_toolkit-1.0.3-py3-none-any.whl.
File metadata
- Download URL: edq_lms_toolkit-1.0.3-py3-none-any.whl
- Upload date:
- Size: 52.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
46bc1e9e72e11da0e3039f069fb7326357ffff1819897b9d9c0f6708b8741c37
|
|
| MD5 |
22b8266ca29202016b3f4f05c1325c75
|
|
| BLAKE2b-256 |
c957b3607afb925ec036771062bdafee9ddbf7fe8391a9e0334d560b44008917
|