# Plantilla Nuxt + Authentik Proxy Plantilla base para aplicaciones Nuxt 4 con autenticación mediante Authentik OAuth. ## Estructura del Proyecto ``` . ├── nuxt4/ # Aplicación Nuxt 4 ├── docker-compose.yml # Configuración de despliegue └── .gitea/ # Gitea Actions CI/CD ``` ## Características - ✅ Nuxt 4 - ✅ Autenticación OAuth con Authentik - ✅ Docker y Docker Compose - ✅ CI/CD con Gitea Actions - ✅ Traefik para proxy reverso y SSL - ✅ Claude Code hooks para monitoreo de Actions ## Desarrollo Local ```bash cd nuxt4 npm install npm run dev ``` ## Claude Code Hooks Este proyecto incluye hooks de Claude Code para monitorear automáticamente las Gitea Actions. ### Configuración Rápida: 1. **Crear token de Gitea:** - Ve a tu instancia de Gitea → Settings → Applications - Genera un token con permisos `repo` 2. **Configurar token:** ```bash echo "export GITEA_TOKEN='tu_token_aqui'" >> ~/.bashrc source ~/.bashrc ``` 3. **Listo!** Cuando Claude Code haga `git push`, automáticamente: - Monitoreará la Gitea Action - Te notificará cuando termine con información detallada - Te mostrará un link directo a los logs 📖 Ver documentación completa en [`.claude/hooks/README.md`](.claude/hooks/README.md) ## Despliegue El proyecto incluye Gitea Actions que automáticamente: 1. Construye la imagen Docker 2. La sube al registro 3. Despliega usando docker-compose ### Variables Requeridas en Gitea **Secrets:** - `REGISTRY_USERNAME` - Usuario del registro Docker - `REGISTRY_PASSWORD` - Contraseña del registro Docker - `NUXT_OAUTH_AUTHENTIK_CLIENT_ID` - Client ID de Authentik - `NUXT_OAUTH_AUTHENTIK_CLIENT_SECRET` - Client Secret de Authentik - `NUXT_SESSION_PASSWORD` - Password para sesiones (32+ caracteres) **Variables:** - `REGISTRY_URL` - URL del registro Docker - `APP_DOMAIN` - Dominio de la aplicación - `NUXT_OAUTH_AUTHENTIK_SERVER_URL` - URL pública de Authentik - `NUXT_OAUTH_AUTHENTIK_SERVER_URL_INTERNAL` - URL interna de Authentik - `NUXT_OAUTH_AUTHENTIK_REDIRECT_URL` - URL de callback OAuth - `NUXT_PUBLIC_APP_URL` - URL pública de la app ## Licencia MIT