learning-paths-plugin


Namelearning-paths-plugin JSON
Version 0.3.3 PyPI version JSON
download
home_pagehttps://github.com/open-craft/learning-paths-plugin
SummaryLearning Paths plugin
upload_time2025-05-27 11:55:34
maintainerNone
docs_urlNone
authorOpenCraft
requires_python>=3.11
licenseNone
keywords python edx
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            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 Not open source unless
otherwise noted.

Please see `LICENSE.txt <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:

   .. code-block:: bash

      git clone <repository_url> <devstack_root>/src/learning-paths-plugin

2. **Install the Plugin**

   Inside the LMS shell, install the plugin by running:

   .. code-block:: bash

      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`:

   .. code-block:: bash

      ./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:

   .. code-block:: bash

      ./manage.py lms migrate completion_aggregator

   .. warning::

      Please read the section about `synchronous vs asynchronous modes <https://github.com/open-craft/openedx-completion-aggregator/?tab=readme-ov-file#synchronous-vs-asynchronous-calculations>`_
      for completion aggregator before enabling this in a production environment. Running in synchronous mode can lead to an outage.


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
##########

..
   All enhancements and patches to learning_paths will be documented
   in this file.  It adheres to the structure of https://keepachangelog.com/ ,
   but in reStructuredText instead of Markdown (for ease of incorporation into
   Sphinx documentation and the PyPI description).

   This project adheres to Semantic Versioning (https://semver.org/).

.. There should always be an "Unreleased" section for changes pending release.

Unreleased
**********

*

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

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/open-craft/learning-paths-plugin",
    "name": "learning-paths-plugin",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.11",
    "maintainer_email": null,
    "keywords": "Python edx",
    "author": "OpenCraft",
    "author_email": "help@opencraft.com",
    "download_url": "https://files.pythonhosted.org/packages/89/36/9b6613afe18081ceb3c72636f60d798f49df89043ef0b8e9fe3c264b7941/learning_paths_plugin-0.3.3.tar.gz",
    "platform": null,
    "description": "learning-paths-plugin\n#####################\n\nPurpose\n*******\n\nA Learning Path consists of a selection of courses bundled together for\nlearners to progress through. This plugin enables the creation and\nmanagement of Learning Paths.\n\nLicense\n*******\n\nThe code in this repository is licensed under the Not open source unless\notherwise noted.\n\nPlease see `LICENSE.txt <LICENSE.txt>`_ for details.\n\nInstallation and Configuration\n******************************\n\n1. **Clone the Repository**\n\n   Clone the repository containing the plugin to the `src` directory under your devstack root:\n\n   .. code-block:: bash\n\n      git clone <repository_url> <devstack_root>/src/learning-paths-plugin\n\n2. **Install the Plugin**\n\n   Inside the LMS shell, install the plugin by running:\n\n   .. code-block:: bash\n\n      pip install -e /edx/src/learning-paths-plugin/\n\n3. **Run Migrations for the Plugin**\n\n   After installing the plugin, run the database migrations for `learning_paths`:\n\n   .. code-block:: bash\n\n      ./manage.py lms migrate learning_paths\n\n4. **Run Completion Aggregator Migrations**\n\n   Ensure that the **completion aggregator** service is also up to date by running its migrations:\n\n   .. code-block:: bash\n\n      ./manage.py lms migrate completion_aggregator\n\n   .. warning::\n\n      Please read the section about `synchronous vs asynchronous modes <https://github.com/open-craft/openedx-completion-aggregator/?tab=readme-ov-file#synchronous-vs-asynchronous-calculations>`_\n      for completion aggregator before enabling this in a production environment. Running in synchronous mode can lead to an outage.\n\n\nOnce these steps are complete, the Learning Paths plugin should be successfully installed and ready to use.\n\n\nUsage\n*****\nAfter installing the plugin, a learning path can be created in the django admin panel `{LMS_URL}/admin/learning_paths/learningpath/`.\n\n\nChange Log\n##########\n\n..\n   All enhancements and patches to learning_paths will be documented\n   in this file.  It adheres to the structure of https://keepachangelog.com/ ,\n   but in reStructuredText instead of Markdown (for ease of incorporation into\n   Sphinx documentation and the PyPI description).\n\n   This project adheres to Semantic Versioning (https://semver.org/).\n\n.. There should always be an \"Unreleased\" section for changes pending release.\n\nUnreleased\n**********\n\n*\n\n0.3.3 - 2025-05-23\n******************\n\nChanged\n=======\n\n* Changed line length from 80 to 120 characters.\n\n0.3.2 - 2025-05-02\n******************\n\nAdded\n=====\n\n* Course key selection in admin forms.\n* Learning Path selection field in admin forms.\n* Enrollment status to the Learning Path list and retrieve APIs.\n* Invite-only functionality for Learning Paths.\n* Course enrollment API.\n\nChanged\n=======\n\n* The Learning Path ``subtitle`` to ``TextField`` and made it optional.\n* The image URL field to ``ImageField``.\n* The user field on the admin enrollments page to raw ID, to prevent the page\n  from retrieving all users in the system.\n\nRemoved\n=======\n\n* The ``slug`` field from the Learning Path model.\n* The UUID compatibility layer from Learning Path keys.\n\n0.3.1 - 2025-04-14\n******************\n\nAdded\n=====\n\n* API for listing and retrieving Learning Paths.\n\nFixed\n=====\n\n* Automatically create grading criteria for Learning Paths.\n\nChanged\n=======\n\n* Replaced relative due dates with actual due dates from course runs.\n\n0.3.0 - 2025-04-03\n******************\n\nChanged\n=======\n\n* Replaced Learning Path UUID with LearningPathKey.\n\n0.2.3 - 2025-03-31\n******************\n\nAdded\n=====\n\n* Enrollment API.\n\n0.2.2 - 2024-12-05\n******************\n\nAdded\n=====\n\n* User grade API\n\n0.2.1 - 2024-10-28\n******************\n\nAdded\n=====\n\n* Progress API\n\n0.2.0 - 2024-01-23\n******************\n\nAdded\n=====\n\n* Database models\n* Django Admin interface\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Learning Paths plugin",
    "version": "0.3.3",
    "project_urls": {
        "Homepage": "https://github.com/open-craft/learning-paths-plugin"
    },
    "split_keywords": [
        "python",
        "edx"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "9fee33d25be871a2cd51a145213650667c59a2c90f78cde1ba9bf4afc5741440",
                "md5": "d288dd0bd0afb3292dbe09530a966c46",
                "sha256": "44c690c10ec46d5817c3268926b061d61293e961b461958637ea5c50dac7ce44"
            },
            "downloads": -1,
            "filename": "learning_paths_plugin-0.3.3-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "d288dd0bd0afb3292dbe09530a966c46",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": ">=3.11",
            "size": 32822,
            "upload_time": "2025-05-27T11:55:33",
            "upload_time_iso_8601": "2025-05-27T11:55:33.605914Z",
            "url": "https://files.pythonhosted.org/packages/9f/ee/33d25be871a2cd51a145213650667c59a2c90f78cde1ba9bf4afc5741440/learning_paths_plugin-0.3.3-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "89369b6613afe18081ceb3c72636f60d798f49df89043ef0b8e9fe3c264b7941",
                "md5": "9e4bab97170a4e6acb324de897b80288",
                "sha256": "cf848b72015172d639f8b7e33ae65137fec700738dd8d3ef4d94f727bf603442"
            },
            "downloads": -1,
            "filename": "learning_paths_plugin-0.3.3.tar.gz",
            "has_sig": false,
            "md5_digest": "9e4bab97170a4e6acb324de897b80288",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.11",
            "size": 26361,
            "upload_time": "2025-05-27T11:55:34",
            "upload_time_iso_8601": "2025-05-27T11:55:34.527653Z",
            "url": "https://files.pythonhosted.org/packages/89/36/9b6613afe18081ceb3c72636f60d798f49df89043ef0b8e9fe3c264b7941/learning_paths_plugin-0.3.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-05-27 11:55:34",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "open-craft",
    "github_project": "learning-paths-plugin",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "tox": true,
    "lcname": "learning-paths-plugin"
}
        
Elapsed time: 0.94905s