entirius-django-reviews
A Django module for product reviews and ratings in Entirius, the open-source modular ecommerce platform. It gives the storefront a REST API to submit and list reviews, lets staff moderate them, keeps an average rating per product, and can export reviews to Magento.
What it does
- Accepts reviews with one or more rating criteria and lists them per sales channel.
- Moderates reviews in the Django admin and over a key-protected API.
- Recalculates the average rating and the number of reviews per product.
- Imports reviews and ratings from CSV.
- Exports reviews to Magento when the
magentoextra is installed.
Installation
uv add entirius-django-reviews
pip install entirius-django-reviews
INSTALLED_APPS = [
...
"django_utils",
"django_pim",
"django_accounts",
"django_reviews",
]
# urls.py
urlpatterns = [
path("", include("django_reviews.urls")),
]
Required settings: BI_ENVIRONMENT and BI_BUSINESS_UNIT (read at import). Every other setting has a default;
reference: https://github.com/entirius/entirius-django-reviews/blob/develop/AGENTS.md (section Settings).
The Magento export is an extra:
uv add "entirius-django-reviews[magento]"
Moderation calls send the key in the X-API-KEY header. Where django_access is installed the key is an access
token with the scope reviews.moderate:
python manage.py access_token create --application reviews-moderation --create-application --scope reviews.moderate --channel default
Without django_access, python manage.py reviews-generate-api-key creates the key.
Quick start
from django_reviews.worker.manage_reviews import calculate_reviews
calculate_reviews() # recalculate average ratings from the accepted reviews
Requirements
- Python 3.11 or newer, Django 5.0 or newer.
- Entirius packages pulled in:
entirius-django-utils,entirius-django-pim,entirius-django-accounts,entirius-py-bievents,entirius-py-process-logger.
Documentation
- Module docs: https://github.com/entirius/entirius-django-reviews/tree/develop/docs
- Entirius documentation: https://docs.entirius.com/
- Changelog: https://github.com/entirius/entirius-django-reviews/blob/develop/CHANGELOG.md
Part of Entirius
This module runs inside the Entirius backend service (Volkanos), next to the product and customer account modules.
- Backend service: https://github.com/entirius/entirius-service-volkanos
- Docker harness: https://github.com/entirius/entirius-zeno
- Sibling modules: https://github.com/entirius/entirius-django-pim, https://github.com/entirius/entirius-django-accounts, https://github.com/entirius/entirius-django-access
Development
make install # sync dependencies (uv)
make check # lint + format check (ruff)
make test # test suite (pytest + pytest-django)
Development and agent instructions: https://github.com/entirius/entirius-django-reviews/blob/develop/AGENTS.md
License
Mozilla Public License 2.0 (MPL-2.0) — see https://github.com/entirius/entirius-django-reviews/blob/develop/LICENSE.
Metadata
Release files for entirius-django-reviews 3.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| entirius_django_reviews-3.0.0.tar.gz | 240.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| entirius_django_reviews-3.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 279.3 kB
Release files / entirius_django_reviews-3.0.0.tar.gz
| Download URL | entirius_django_reviews-3.0.0.tar.gz |
|---|---|
| Size | 240.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
87f914fa023581e26aa8f360ed6f848a1845564e369c98e3abf3db141839c61f
|
|
BLAKE2b-256 checksum How to use checksums |
d31a7a5283323c1a117b97c4acf10b5281aec55edd7241bcc15e11b0b3e860b7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / entirius_django_reviews-3.0.0-py3-none-any.whl
| Download URL | entirius_django_reviews-3.0.0-py3-none-any.whl |
|---|---|
| Size | 38.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6ca8ed1bb54cc53d30497ffe35cb648b7e3a54ebd88639a9a5e16c4332602688
|
|
BLAKE2b-256 checksum How to use checksums |
85e5d04b80d03c633797e72ef0495539a64a90ba125d445137de3fdd5835269c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|