A edx-platform plugin for learner recommendations.
Project description
A plugin for personalized recommendations
Please tag @openedx/vanguards on any PRs or issues. Thanks!
Overview
The edx-recommendations is a Django app that serves REST API endpoints for getting personalized recommendations for learner. It used different sources like Algolia and Amplitude for recommendations.
edx-recommendations is a plugin that runs under lms. It uses same configuration settings as defined in lms. It can be used by installing in edx-platform.
How to install locally
- Clone this repo into ../src/ directory (relative to your “devstack” repo location). This will mount the directoryin a way that is accessible to the lms container.
From lms-shell, uninstall edx-recommendations and install your local copy. You can run the following command:
pip uninstall edx-recommendations -y; pip install -e /edx/src/edx-recommendations
How to create a new release
- Checkout to a new branch and increment __version__ by the smallest possible value located in edx-recommendations/__init__.py.This will allow edx-platform to pick up the new version.
Update the CHANGELOG.rst with the brief description of your changes.
- Once a branch has been merged, it is necessary to create a release on github, specifying the new version from__version__ set above.
Testing
edx-recommendations has an assortment of test cases and code quality checks to catch potential problems during development. To run them all in the version of Python you chose for your virtualenv:
$ make validate
To run just the unit tests:
$ make test
To run just the unit tests and check diff coverage
$ make diff_cover
To run just the code quality checks:
$ make quality
To run the unit tests under every supported Python version and the code quality checks:
$ make test-all
To generate and open an HTML report of how much of the code is covered by test cases:
$ make coverage
License
The code in this repository is licensed under the AGPL 3.0 unless otherwise noted.
Please see LICENSE.txt for details.
How To Contribute
Contributions are very welcome.
Please read How To Contribute for details.
The pull request description template should be automatically applied if you are creating a pull request from GitHub. Otherwise you can find it at PULL_REQUEST_TEMPLATE.md.
The issue report template should be automatically applied if you are creating an issue on GitHub as well. Otherwise you can find it at ISSUE_TEMPLATE.md.
Reporting Security Issues
Please do not report security issues in public. Please email security@edx.org.
Getting Help
Have a question about this repository, or about Open edX in general? Please refer to this list of resources if you need any assistance.
Change Log
Unreleased
[1.0.6] - 2023-09-25
What’s Changed * Updated settings file and default values
[1.0.5] - 2023-09-25
What’s Changed * Fixed formatting for PyPI release
[1.0.4] - 2023-09-25
What’s Changed * Added PyPI publish workflow for the package
[1.0.3] - 2023-09-22
What’s Changed * Added Support for Django 4.2
[1.0.2] - 2023-08-25
What’s Changed
Added recommendations unavailable event for learner home amplitude recommendations
Removed constraint for edx-drf-extensions
Documentation Updates
Updated docstring for cross product recommendations api endpoint
[1.0.0] - 2023-08-09
What’s Changed
Moved existing recommendations APIs to this plugin
Added tests for the APIs and utils
Documentation Updates
Added purpose of this repo as an ADR
Added pull request template and updated README file with initial setup guide
[0.1.0] – 2023-05-15
First release on PyPI.
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
Built Distribution
File details
Details for the file edx-recommendations-1.0.6.tar.gz
.
File metadata
- Download URL: edx-recommendations-1.0.6.tar.gz
- Upload date:
- Size: 26.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0928a959129da526014be8b638f0c7998926346606093f1f0cac1c2ed522873c |
|
MD5 | 4a900047ac201c3b15df3233295a1ddc |
|
BLAKE2b-256 | a54a1e5ca04137d39a195207ef100450e6c6848bd259f51a8ec7c785c4812c4e |
File details
Details for the file edx_recommendations-1.0.6-py2.py3-none-any.whl
.
File metadata
- Download URL: edx_recommendations-1.0.6-py2.py3-none-any.whl
- Upload date:
- Size: 17.5 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.9.18
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5673300ac340e0a31cd8c70d42e00b1b620635f1cdbb1408faffd304bb4d3c6a |
|
MD5 | dc720f431aa1638e238aac6ac22790e4 |
|
BLAKE2b-256 | 2766b1e25c4e43e58831c6eca7259106367c659571c8142afb7a0a353311d9a9 |