30 lines
856 B
Text
30 lines
856 B
Text
# Core Framework
|
|
fastapi>=0.111.0,<1.0.0 # 0.111.0+ for Python 3.14 compatibility
|
|
uvicorn[standard]>=0.30.0,<1.0.0 # 0.30.0+ for Python 3.14 compatibility
|
|
waitress>=3.0.1,<4.0.0
|
|
asgiref>=3.7.0,<4.0.0
|
|
a2wsgi>=1.10.10,<2.0.0
|
|
|
|
# Database
|
|
sqlalchemy>=2.0.27,<2.1.0 # 2.0.27+ fixes Python 3.13+ compatibility
|
|
aiosqlite>=0.19.0,<0.20.0
|
|
|
|
# Templates & UI
|
|
jinja2>=3.1.2,<4.0.0
|
|
python-multipart>=0.0.6,<0.1.0
|
|
|
|
# Authentication & Security
|
|
passlib[bcrypt]>=1.7.4,<2.0.0
|
|
python-jose[cryptography]>=3.3.0,<4.0.0
|
|
python-dotenv>=1.0.0,<2.0.0
|
|
pydantic-settings>=2.11.0,<3.0.0
|
|
itsdangerous>=2.2.0,<3.0.0
|
|
|
|
# Development & Testing
|
|
pytest>=7.4.3,<8.0.0
|
|
pytest-asyncio>=0.21.1,<1.0.0
|
|
httpx>=0.25.1,<1.0.0
|
|
|
|
# Optional (for future enhancements)
|
|
redis>=5.0.1,<6.0.0 # For distributed route sync
|
|
celery>=5.3.4,<6.0.0 # For background tasks
|