Skip to main content

Learning Paths plugin

Project description

learning-paths-plugin

Purpose

A Learning Path consists of a selection of courses bundled together for learners to progress through. This plugin enables the creation and management of Learning Paths.

License

The code in this repository is licensed under the GNU AGPLv3 unless otherwise noted. Please see LICENSE.txt for details.

Installation and Configuration

  1. Clone the Repository

    Clone the repository containing the plugin to the src directory under your devstack root:

    git clone <repository_url> <devstack_root>/src/learning-paths-plugin
  2. Install the Plugin

    Inside the LMS shell, install the plugin by running:

    pip install -e /edx/src/learning-paths-plugin/
  3. Run Migrations for the Plugin

    After installing the plugin, run the database migrations for learning_paths:

    ./manage.py lms migrate learning_paths
  4. Run Completion Aggregator Migrations

    Ensure that the completion aggregator service is also up to date by running its migrations:

    ./manage.py lms migrate completion_aggregator

Once these steps are complete, the Learning Paths plugin should be successfully installed and ready to use.

Usage

After installing the plugin, a learning path can be created in the django admin panel {LMS_URL}/admin/learning_paths/learningpath/.

Change Log

Unreleased

0.4.0 - 2026-06-12

Fixed

  • Mark course key admin widget as safe (Django 5.2 automatically escapes this code).

  • Do not evaluate DB queries when building the docs.

Removed

  • Django 4.2 support.

0.3.5 - 2025-09-01

Changed

  • Allow changing the Learning Path key in the Django admin interface.

Removed

  • Grading criteria from the Django admin interface.

  • Step weight and order from the Django admin interface.

0.3.4 - 2025-08-02

Added

  • Bulk unenrollment API.

  • Enrollment audit model that tracks the enrollment state transitions.

  • Allow specifying time commitment.

  • Allow duplicating Learning Paths in the Django admin interface.

Changed

  • The Learning Paths API includes start and end dates for its steps.

  • Return enrollment date in the API instead of a boolean.

  • Allow specifying any text for the duration.

  • Make the skill level optional.

0.3.3 - 2025-05-23

Changed

  • Changed line length from 80 to 120 characters.

0.3.2 - 2025-05-02

Added

  • Course key selection in admin forms.

  • Learning Path selection field in admin forms.

  • Enrollment status to the Learning Path list and retrieve APIs.

  • Invite-only functionality for Learning Paths.

  • Course enrollment API.

Changed

  • The Learning Path subtitle to TextField and made it optional.

  • The image URL field to ImageField.

  • The user field on the admin enrollments page to raw ID, to prevent the page from retrieving all users in the system.

Removed

  • The slug field from the Learning Path model.

  • The UUID compatibility layer from Learning Path keys.

0.3.1 - 2025-04-14

Added

  • API for listing and retrieving Learning Paths.

Fixed

  • Automatically create grading criteria for Learning Paths.

Changed

  • Replaced relative due dates with actual due dates from course runs.

0.3.0 - 2025-04-03

Changed

  • Replaced Learning Path UUID with LearningPathKey.

0.2.3 - 2025-03-31

Added

  • Enrollment API.

0.2.2 - 2024-12-05

Added

  • User grade API

0.2.1 - 2024-10-28

Added

  • Progress API

0.2.0 - 2024-01-23

Added

  • Database models

  • Django Admin interface

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

learning_paths_plugin-0.4.0.tar.gz (44.3 kB view details)

Uploaded Source

Built Distribution

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

learning_paths_plugin-0.4.0-py2.py3-none-any.whl (51.3 kB view details)

Uploaded Python 2Python 3

File details

Details for the file learning_paths_plugin-0.4.0.tar.gz.

File metadata

  • Download URL: learning_paths_plugin-0.4.0.tar.gz
  • Upload date:
  • Size: 44.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for learning_paths_plugin-0.4.0.tar.gz
Algorithm Hash digest
SHA256 3264071ee7f070866c0a886c8b4a2d27592c3f6e482735ae65291433bc03dd5a
MD5 73253010632bd8a2521dfe51c9104a84
BLAKE2b-256 dc797ab9c5de2cdc5c8ad3100dfa29a1ea5dd0d6550829ccc23f2f66eb067cb9

See more details on using hashes here.

File details

Details for the file learning_paths_plugin-0.4.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for learning_paths_plugin-0.4.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 5f3bb1ff5420d1a2e259d261e055eb97f4289a4a265871dbf9d63382ad6653c8
MD5 97bf9d1e2ff17aa234be311514f8c9af
BLAKE2b-256 10b3b372b45ac7e63723eeb96953b0fdf89eaf2626cd7d53cd3d6f8f318ddc6f

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