nanochat/services/auth/pyproject.toml
Manmohan Sharma 4b4aca642a
feat(auth): OAuth2 + JWT auth service with Alembic migrations (#5 #7)
- Alembic async migrations: users, conversations, messages, is_favorited
- FastAPI auth service: Google + GitHub OAuth, RS256 JWT, refresh cookie
- /auth/me, /auth/refresh, /auth/validate (service-to-service)
- rate limiting 10/min on OAuth routes, CORS locked to FRONTEND_URL

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-16 11:47:00 -07:00

41 lines
850 B
TOML

[project]
name = "samosachaat-auth"
version = "0.1.0"
description = "samosaChaat authentication service (OAuth2 + JWT)"
readme = "README.md"
requires-python = ">=3.12"
dependencies = [
"fastapi>=0.117.1",
"uvicorn[standard]>=0.36.0",
"pydantic>=2.8.0",
"pydantic-settings>=2.4.0",
"sqlalchemy[asyncio]>=2.0.36",
"asyncpg>=0.29.0",
"alembic>=1.13.0",
"authlib>=1.3.2",
"httpx>=0.27.0",
"itsdangerous>=2.2.0",
"pyjwt>=2.9.0",
"cryptography>=43.0.0",
"slowapi>=0.1.9",
"python-multipart>=0.0.9",
]
[dependency-groups]
dev = [
"pytest>=8.0.0",
"pytest-asyncio>=0.24.0",
"httpx>=0.27.0",
"aiosqlite>=0.20.0",
"respx>=0.21.1",
]
[tool.pytest.ini_options]
asyncio_mode = "auto"
testpaths = ["src/tests"]
python_files = ["test_*.py"]
pythonpath = ["."]
[tool.uv]
package = false