chore: initial project setup with backend, frontend, Android app, and CI/CD

Add complete NexaMFA push MFA system with:
- FastAPI backend with PostgreSQL, Redis, OIDC provider, and Prometheus metrics
- React TypeScript admin console
- Android Kotlin/Jetpack Compose app with biometric authentication
- Docker Compose deployment configuration
- Gitea CI workflow for backend, frontend, and Android builds
- Environment configuration template with security settings
- Documentation for security model, deployment
This commit is contained in:
2026-06-28 09:37:51 +02:00
commit f925009977
57 changed files with 2776 additions and 0 deletions
+39
View File
@@ -0,0 +1,39 @@
[project]
name = "nexamfa-backend"
version = "0.1.0"
description = "Self-hosted Push MFA service with OIDC provider support"
requires-python = ">=3.12"
dependencies = [
"alembic==1.13.2",
"asyncpg==0.29.0",
"cryptography==42.0.8",
"fastapi==0.111.0",
"google-auth==2.30.0",
"httpx==0.27.0",
"prometheus-client==0.20.0",
"pydantic-settings==2.3.4",
"pyjwt[crypto]==2.8.0",
"python-jose[cryptography]==3.3.0",
"python-multipart==0.0.9",
"qrcode[pil]==7.4.2",
"redis==5.0.7",
"slowapi==0.1.9",
"sqlalchemy[asyncio]==2.0.31",
"uvicorn[standard]==0.30.1"
]
[project.optional-dependencies]
test = [
"aiosqlite==0.20.0",
"pytest==8.2.2",
"pytest-asyncio==0.23.7",
"pytest-cov==5.0.0"
]
[tool.pytest.ini_options]
asyncio_mode = "auto"
testpaths = ["tests"]
[tool.ruff]
line-length = 100
target-version = "py312"