[tool.poetry]
name = "eVibes"
version = "2.8.5"
description = "eVibes is an open-source eCommerce backend service built with Django. It’s designed for flexibility, making it ideal for various use cases and learning Django skills. The project is easy to customize, allowing for straightforward editing and extension."
authors = ["fureunoir <contact@fureunoir.com>"]
readme = "README.md"
package-mode = false

[tool.poetry.dependencies]
python = ">=3.12,<3.13"
poetry-core = "2.1.3"
ruff = "0.11.8"
six = "1.17.0"
cryptography = "44.0.3"
psutil = "7.0.0"
redis = "6.0.0"
httpx = "0.28.1"
celery-stubs = { version = "0.1.3", optional = true }
celery = { version = "5.5.2", optional = true }
celery-prometheus-exporter = { version = "1.7.0", optional = true }
pillow = "11.2.1"
south = "1.0.2"
pygraphviz = { version = "1.14", optional = true }
requests = "2.32.3"
gunicorn = "23.0.0"
psycopg2 = "2.9.10"
polib = "1.2.0"
zeep = "4.3.1"
aiosmtpd = "1.4.6"
openai = { version = "1.77.0", optional = true }
swapper = "1.4.0"
paramiko = "3.5.1"
filetype = "1.2.0"
colorlog = "6.9.0"
pymdown-extensions = "10.15"
sentry-sdk = { extras = ["django", "celery", "opentelemetry", "redis"], version = "2.27.0" }
jupyter = { version = "1.1.1", optional = true }
elasticsearch-dsl = "8.18.0"
django = "5.2"
django-extensions = "4.1"
graphene-django = "3.2.3"
graphene-file-upload = "1.3.0"
django-redis = "5.4.0"
django-modeltranslation = "0.19.14"
django-ratelimit = "4.1.0"
django-hosts = "6.0"
django-mptt = "0.17.0"
django-filter = "25.1"
django-dbbackup = "4.2.1"
django-storages = "1.14.6"
django-stubs = "5.2.0"
django-constance = "4.3.2"
django-daisy = "1.0.23"
django-cacheops = "7.2"
django-mailbox = "4.10.1"
django-prometheus = "^2.3.1"
django-model-utils = "5.0.0"
django-widget-tweaks = "1.5.0"
django-health-check = "3.19.1"
django-cors-headers = "4.7.0"
django-celery-beat = { version = "2.8.0", optional = true }
django-celery-results = { version = "2.6.0", optional = true }
django-json-widget = "2.0.1"
django-md-field = "0.1.0"
django-elasticsearch-dsl = "8.0"
django-elasticsearch-dsl-drf = "0.22.5"
djangorestframework = "3.16.0"
djangorestframework-simplejwt = { extras = ["crypto"], version = "5.5.0" }
djangorestframework-recursive = "0.1.2"
djangorestframework-camel-case = "1.4.2"
djangorestframework-xml = "2.0.0"
djangorestframework-yaml = "2.0.0"
drf-spectacular = { extras = ["sidecar"], version = "0.28.0" }

[tool.poetry.extras]
graph = ["pygraphviz"]
worker = ["celery", "celery-stubs", "django-celery-beat", "django-celery-results", "celery-prometheus-exporter"]
AI = ["openai"]
jupyter = ["jupyter"]

[build-system]
requires = ["poetry-core"]
build-backend = "poetry.core.masonry.api"