Asegúrate de tener un archivo .env en la raíz del proyecto con:
SUPABASE_URL=tu_url_de_supabase
SUPABASE_KEY=tu_clave_anonima_de_supabase
VITE_API_URL=http://localhost:8000
VITE_SUPABASE_URL=tu_url_de_supabase
VITE_SUPABASE_ANON_KEY=tu_clave_anonima_de_supabasecd backend
npm install
npm run start:devEl backend debería estar corriendo en http://localhost:8000
cd frontend
npm install
npm run devEl frontend debería estar corriendo en http://localhost:3000
-
Acceder a la aplicación: Ve a
http://localhost:3000- Deberías ser redirigido automáticamente a
/auth
- Deberías ser redirigido automáticamente a
-
Registrarse:
- Completa el formulario de registro
- Verifica que se cree la cuenta en Supabase
- Deberías ser redirigido a la página principal
-
Cerrar sesión:
- Haz clic en el menú de usuario (avatar)
- Selecciona "Cerrar Sesión"
- Deberías ser redirigido a
/auth
-
Iniciar sesión:
- Usa las credenciales que acabas de crear
- Deberías ser redirigido a la página principal
-
Probar rutas protegidas:
- Intenta acceder directamente a
/presentations - Deberías poder acceder si estás autenticado
- Si no estás autenticado, deberías ser redirigido a
/auth
- Intenta acceder directamente a
- Ve al dashboard de Supabase
- Navega a Authentication > Users
- Verifica que el usuario se haya creado correctamente
- Verifica que los metadatos del usuario estén guardados
Puedes probar los endpoints de la API usando curl o Postman:
# Registrarse
curl -X POST http://localhost:8000/auth/register \
-H "Content-Type: application/json" \
-d '{"email":"test@example.com","password":"password123","fullName":"Test User"}'
# Iniciar sesión
curl -X POST http://localhost:8000/auth/login \
-H "Content-Type: application/json" \
-d '{"email":"test@example.com","password":"password123"}'
# Obtener perfil (reemplaza TOKEN con el token de la respuesta anterior)
curl -X GET http://localhost:8000/auth/profile \
-H "Authorization: Bearer TOKEN"- Verifica que las variables de entorno estén configuradas correctamente
- Asegúrate de que el archivo
.envesté en la raíz del proyecto
- Verifica que el usuario exista en Supabase
- Verifica que la contraseña sea correcta
- Verifica que el token se esté enviando correctamente
- Verifica que el token no haya expirado
- Verifica que las URLs estén configuradas correctamente en Supabase
- Asegúrate de que el frontend y backend estén corriendo en los puertos correctos
✅ Frontend:
- Formulario de login
- Formulario de registro
- Página de autenticación
- Rutas protegidas
- Menú de usuario
- Manejo de estado de autenticación
- Interceptores de API para tokens
✅ Backend:
- Endpoints de autenticación
- Validación de tokens JWT
- Guards de autenticación
- Integración con Supabase
✅ Seguridad:
- Row Level Security (RLS) en Supabase
- Tokens JWT para autenticación
- Validación de entrada
- Protección de rutas