# ARN-UI API API de autenticación con UI integrada. ## Instalación ```bash pip install -r requirements.txt ``` ## Arrancar ```bash # Modo desarrollo (reload automático) python3 -m uvicorn src.main:app --reload --port 8000 # Modo producción python3 -m uvicorn src.main:app --host 0.0.0.0 --port 8000 ``` ## Endpoints | Método | Endpoint | Descripción | |--------|----------|-------------| | GET | `/` | Redirige a UI de login | | GET | `/health` | Health check | | POST | `/api/v1/auth/login` | Login con email/password | | POST | `/api/v1/auth/logout` | Cerrar sesión | | POST | `/api/v1/auth/refresh` | Refrescar token | | GET | `/api/v1/auth/validate` | Validar token | | GET | `/ui/login.html` | Página de login | | GET | `/ui/dashboard.html` | Dashboard del usuario | | GET | `/ui/change-password.html` | Cambiar contraseña | ## Usuarios de prueba | Email | Password | |-------|----------| | alice@example.com | SecurePass123! | ## Variables de entorno | Variable | Default | Descripción | |----------|---------|-------------| | JWT_SECRET | dev-secret-key-change-in-prod | Clave para firmar JWT | ## Producción Para producción, usar: ```bash uvicorn src.main:app --host 0.0.0.0 --port 8000 --workers 4 ``` O con Gunicorn: ```bash gunicorn src.main:app -w 4 -k uvicorn.workers.UvicornWorker -b 0.0.0.0:8000 ```