Sistema de autenticación completo construido con HTML, CSS y JavaScript Vanilla, usando Firebase como backend de autenticación.
- Inicio de sesión con email y contraseña
- Registro de usuarios con validaciones en tiempo real
- Recuperación de contraseña via correo electrónico
- Página de reset personalizada para nueva contraseña
- Dashboard protegido — solo accesible con sesión activa
- Recordarme — mantiene la sesión activa al cerrar el navegador
- Spinner animado en botones durante procesos de autenticación
- Validación de email en tiempo real mientras el usuario escribe
- Mostrar/ocultar contraseña con ícono de ojo
- Cierre de sesión seguro
- HTML5
- CSS3
- JavaScript Vanilla
- Firebase Authentication v10.12.0
- Vite v8 — para variables de entorno y servidor local
login/
├── .env
├── .gitignore
├── index.html
├── register.html
├── dashboard.html
├── recovery.html
├── reset.html
├── favicon.ico
├── package.json
├── js/
│ ├── auth.js
│ ├── reset.js
│ ├── spinner.js
│ └── validacion.js
└── estilos/
├── estilo.css
└── spinner.css
git clone https://github.com/jefersc/login.git
cd loginnpm installCrea un archivo .env en la raíz con tus credenciales de Firebase:
VITE_API_KEY=tu_api_key
VITE_AUTH_DOMAIN=tu_proyecto.firebaseapp.com
VITE_PROJECT_ID=tu_proyecto
VITE_STORAGE_BUCKET=tu_proyecto.appspot.com
VITE_MESSAGING_SENDER_ID=tu_sender_id
VITE_APP_ID=tu_app_idnpm run devAbre http://localhost:5173 en tu navegador.
- Nunca compartas tu archivo
.envni lo subas a repositorios públicos - Las contraseñas son gestionadas completamente por Firebase — nunca se almacenan en texto plano
- Recuerda configurar tu propia API Key de Firebase antes de correr el proyecto