mirror of
https://github.com/pacnpal/thrillwiki_django_no_react.git
synced 2025-12-24 11:51:08 -05:00
Add secret management guide, client-side performance monitoring, and search accessibility enhancements
- Introduced a comprehensive Secret Management Guide detailing best practices, secret classification, development setup, production management, rotation procedures, and emergency protocols. - Implemented a client-side performance monitoring script to track various metrics including page load performance, paint metrics, layout shifts, and memory usage. - Enhanced search accessibility with keyboard navigation support for search results, ensuring compliance with WCAG standards and improving user experience.
This commit is contained in:
@@ -4,66 +4,86 @@ version = "0.1.0"
|
||||
readme = "README.md"
|
||||
requires-python = ">=3.13"
|
||||
dependencies = [
|
||||
"django>=5.0",
|
||||
"djangorestframework>=3.14.0",
|
||||
"django-cors-headers>=4.3.1",
|
||||
"django-allauth>=0.60.1",
|
||||
"django-oauth-toolkit>=3.0.1",
|
||||
"dj-rest-auth>=7.0.0",
|
||||
"pyjwt>=2.10.1",
|
||||
# =============================================================================
|
||||
# Core Django
|
||||
# =============================================================================
|
||||
"django>=5.2.8",
|
||||
"psycopg2-binary>=2.9.9",
|
||||
"dj-database-url>=2.3.0",
|
||||
"requests>=2.32.3",
|
||||
"django-webpack-loader>=3.1.1",
|
||||
"python-dotenv>=1.0.1",
|
||||
"Pillow>=10.2.0",
|
||||
"django-cleanup>=8.0.0",
|
||||
"django-filter>=23.5",
|
||||
"django-htmx>=1.17.2",
|
||||
"whitenoise>=6.6.0",
|
||||
"pycountry>=24.6.1",
|
||||
"black>=24.1.0",
|
||||
"flake8>=7.1.1",
|
||||
"pytest>=8.3.4",
|
||||
"pytest-django>=4.9.0",
|
||||
"channels>=4.2.0",
|
||||
"channels-redis>=4.2.1",
|
||||
"daphne>=4.1.2",
|
||||
"django-simple-history>=3.5.0",
|
||||
"django-tailwind-cli>=2.21.1",
|
||||
"playwright>=1.41.0",
|
||||
"pytest-playwright>=0.4.3",
|
||||
"django-pghistory>=3.5.2",
|
||||
"django-htmx-autocomplete>=1.0.5",
|
||||
"coverage>=7.9.1",
|
||||
"poetry>=2.1.3",
|
||||
"piexif>=1.1.3",
|
||||
"django-environ>=0.12.0",
|
||||
"factory-boy>=3.3.3",
|
||||
"drf-spectacular>=0.27.0",
|
||||
"django-silk>=5.0.0",
|
||||
"django-debug-toolbar>=4.0.0",
|
||||
"nplusone>=1.0.0",
|
||||
"django-health-check>=3.17.0",
|
||||
"django-redis>=5.4.0",
|
||||
"sentry-sdk>=1.40.0",
|
||||
"python-json-logger>=2.0.7",
|
||||
"psutil>=7.0.0",
|
||||
"django-extensions>=4.1",
|
||||
"werkzeug>=3.1.3",
|
||||
"django-widget-tweaks>=1.5.0",
|
||||
"redis>=6.4.0",
|
||||
"ruff>=0.12.10",
|
||||
"python-decouple>=3.8",
|
||||
"pyright>=1.1.404",
|
||||
"celery>=5.5.3",
|
||||
|
||||
# =============================================================================
|
||||
# Django REST Framework
|
||||
# =============================================================================
|
||||
"djangorestframework>=3.15.2",
|
||||
"drf-spectacular>=0.28.0",
|
||||
"django-cors-headers>=4.6.0",
|
||||
"django-filter>=24.3",
|
||||
|
||||
# =============================================================================
|
||||
# Authentication & Security
|
||||
# =============================================================================
|
||||
"django-allauth>=65.3.0",
|
||||
"dj-rest-auth>=7.0.0",
|
||||
"djangorestframework-simplejwt>=5.5.1",
|
||||
"pyjwt>=2.10.1",
|
||||
"cryptography>=44.0.0",
|
||||
|
||||
# =============================================================================
|
||||
# Image Processing & Media
|
||||
# =============================================================================
|
||||
"Pillow>=10.4.0,<11.2",
|
||||
"django-cleanup>=8.1.0",
|
||||
"piexif>=1.1.3",
|
||||
"django-cloudflareimages-toolkit>=1.0.6",
|
||||
|
||||
# =============================================================================
|
||||
# Frontend Integration (HTMX, Templates)
|
||||
# =============================================================================
|
||||
"django-htmx>=1.20.0",
|
||||
"django-htmx-autocomplete>=1.0.5",
|
||||
"django-widget-tweaks>=1.5.0",
|
||||
"django-tailwind-cli>=2.21.1",
|
||||
"whitenoise>=6.8.0",
|
||||
"rjsmin>=1.2.0",
|
||||
"rcssmin>=1.1.0",
|
||||
|
||||
# =============================================================================
|
||||
# Task Queue & Caching
|
||||
# =============================================================================
|
||||
"celery>=5.5.3,<6",
|
||||
"django-celery-beat>=2.8.1",
|
||||
"django-celery-results>=2.6.0",
|
||||
"djangorestframework-simplejwt>=5.5.1",
|
||||
"django-forwardemail>=1.0.0",
|
||||
"django-cloudflareimages-toolkit>=1.0.6",
|
||||
"redis>=5.2.0",
|
||||
"django-redis>=5.4.0",
|
||||
"hiredis>=3.1.0",
|
||||
|
||||
# =============================================================================
|
||||
# Database & History Tracking
|
||||
# =============================================================================
|
||||
"django-pghistory>=3.5.2",
|
||||
"django-fsm>=2.8.1",
|
||||
"django-fsm-log>=3.1.0",
|
||||
|
||||
# =============================================================================
|
||||
# Monitoring & Observability
|
||||
# =============================================================================
|
||||
"sentry-sdk>=2.20.0,<3",
|
||||
"django-health-check>=3.17.0",
|
||||
"python-json-logger>=2.0.7",
|
||||
"psutil>=7.0.0",
|
||||
"nplusone>=1.0.0",
|
||||
|
||||
# =============================================================================
|
||||
# Utilities
|
||||
# =============================================================================
|
||||
"requests>=2.32.3",
|
||||
"pycountry>=24.6.1",
|
||||
"django-extensions>=4.1",
|
||||
"werkzeug>=3.1.3",
|
||||
"django-forwardemail>=1.0.0",
|
||||
]
|
||||
|
||||
[dependency-groups]
|
||||
@@ -73,6 +93,28 @@ dev = [
|
||||
"black>=25.1.0",
|
||||
"django-stubs>=5.2.2",
|
||||
"rope>=1.14.0",
|
||||
"ruff>=0.9.2",
|
||||
"pyright>=1.1.405",
|
||||
]
|
||||
test = [
|
||||
"pytest>=8.3.5",
|
||||
"pytest-django>=4.10.0",
|
||||
"pytest-playwright>=0.6.2",
|
||||
"playwright>=1.50.0",
|
||||
"coverage>=7.9.2",
|
||||
"factory-boy>=3.3.3",
|
||||
"selenium>=4.15.0",
|
||||
"axe-selenium-python>=2.1.6",
|
||||
]
|
||||
profiling = [
|
||||
# Optional profiling tools - install with: uv sync --group profiling
|
||||
"django-silk>=5.0.0",
|
||||
"django-debug-toolbar>=4.0.0",
|
||||
]
|
||||
lint = [
|
||||
"black>=25.1.0",
|
||||
"flake8>=7.1.1",
|
||||
"ruff>=0.9.2",
|
||||
]
|
||||
|
||||
[tool.pyright]
|
||||
@@ -151,3 +193,18 @@ output = "coverage.xml"
|
||||
|
||||
[tool.uv.sources]
|
||||
python-json-logger = { url = "https://github.com/nhairs/python-json-logger/releases/download/v3.0.0/python_json_logger-3.0.0-py3-none-any.whl" }
|
||||
|
||||
# =============================================================================
|
||||
# Ruff Configuration
|
||||
# =============================================================================
|
||||
|
||||
[tool.ruff]
|
||||
line-length = 120
|
||||
target-version = "py313"
|
||||
|
||||
[tool.ruff.lint]
|
||||
select = ["E", "F", "W", "I", "UP", "B", "C4", "SIM"]
|
||||
ignore = ["E501"]
|
||||
|
||||
[tool.ruff.lint.isort]
|
||||
known-first-party = ["apps", "config", "thrillwiki"]
|
||||
|
||||
Reference in New Issue
Block a user