Initial production-ready Lucozade audit dashboard

This commit is contained in:
2026-08-06 08:03:32 -04:00
commit edd0af342e
33 changed files with 9209 additions and 0 deletions
+60
View File
@@ -0,0 +1,60 @@
# Lucozade Store Audit · Login V6
Versión preparada para funcionar en:
- Local: `http://localhost:3000/`
- Producción: `https://digitalcompass.agency/lucozade/`
## Incluye
- Inicio de sesión con correo y contraseña.
- Registro seguro mediante n8n y la API administrativa de Supabase Auth.
- **Remember me**: recuerda el correo y conserva la sesión en el navegador.
- Sesión temporal por pestaña cuando Remember me está desmarcado.
- Recuperación mediante enlace nativo de Supabase Auth enviado por Gmail desde n8n.
- Pantalla real para crear una contraseña nueva al abrir el enlace.
- Botón **Sign out** dentro de la aplicación.
- Vite con `/` durante desarrollo y `/lucozade/` en el build de producción.
- Rollback automático: si Supabase crea el usuario pero falla el acceso de la aplicación, n8n elimina el usuario parcial para que el correo no quede bloqueado.
## Archivos importantes
- `Lucozade_Auth_Direct_n8n_V6_READY.json`: workflow completo de n8n.
- `Lucozade_Auth_V6_Supabase.sql`: script idempotente de Supabase.
- `.env`: variables de la aplicación.
- `vite.config.ts`: base local/producción.
## Instalación
1. Ejecutar `Lucozade_Auth_V6_Supabase.sql` en Supabase SQL Editor.
2. Importar `Lucozade_Auth_Direct_n8n_V6_READY.json` en n8n.
3. Confirmar la credencial Gmail en:
- `Send Welcome with Gmail`
- `Send Reset with Gmail`
4. Guardar y publicar/activar el workflow.
5. Ejecutar en la aplicación:
```bash
npm install
npm run build
```
6. Publicar el contenido interno de `dist` en `/lucozade/`.
## ADDITIONAL_REDIRECT_URLS
Agregar al final, sin borrar los valores actuales:
```text
https://digitalcompass.agency/lucozade/,https://digitalcompass.agency/lucozade,http://localhost:3000/,http://127.0.0.1:3000/,http://localhost:5173/,http://127.0.0.1:5173/,http://localhost:4173/lucozade/,http://127.0.0.1:4173/lucozade/
```
No requiere SMTP, Send Email Hook ni cambios en Auth/GoTrue.
## Comportamiento correcto de las cuentas
- La cuenta real vive en `auth.users`.
- `public.lucozade_access` solo determina si esa cuenta puede entrar a Lucozade.
- Borrar `lucozade_access` revoca el acceso, pero no elimina la cuenta ni su contraseña.
- Para eliminar totalmente una cuenta, usar **Authentication → Users** en Supabase.
- Intentar registrar un correo que ya existe no cambia su contraseña; la aplicación indica usar **Sign in** o **Forgot password**.