Microaplicación web para gestión de checklists de limpieza con autenticación por PIN.
- Autenticación simple con PIN numérico
- Selección de unidades por categoría (corto plazo / renta fija)
- Checklist de limpieza con áreas específicas (baño, cocina, blancos, sala)
- Subida de fotos (antes, después, detalle) a Google Drive
- Estados finales (Limpio y Listo, Con Observaciones, No Listo)
- Comentarios adicionales para observaciones específicas
- Diseño responsive y minimalista
- Node.js con Express
- MongoDB con Mongoose
- Google Drive API para almacenamiento de fotos
- JWT para autenticación
- React con hooks
- Axios para peticiones HTTP
- CSS3 con diseño responsive
- Node.js (v14 o superior)
- MongoDB (local o Atlas)
- Cuenta de Google Cloud Platform
- Google Drive API habilitada
git clone https://github.com/tu-usuario/checklist-app.git
cd checklist-appcd backend
npm installCrear archivo .env en la carpeta backend/:
# MongoDB
MONGO_URI=mongodb://localhost:27017/checklist-app
# JWT Secret
JWT_SECRET=your-secret-key-change-this-in-production
# Google Drive Configuration
GOOGLE_APPLICATION_CREDENTIALS=./credentials.json
GOOGLE_DRIVE_FOLDER_ID=tu-folder-id-de-google-drive
# Server Port
PORT=4000- Crear proyecto en Google Cloud Console
- Habilitar Google Drive API
- Crear cuenta de servicio y descargar
credentials.json - Colocar
credentials.jsonen la carpetabackend/ - Crear carpeta en Google Drive y compartir con la cuenta de servicio
cd frontend
npm installcd backend
node seed.jscd backend
npm startEl servidor estará disponible en http://localhost:4000
cd frontend
npm startLa aplicación estará disponible en http://localhost:3000
- Usuario: Operador1
- PIN: 1234
- Login: Ingresa con nombre y PIN
- Seleccionar Unidad: Elige el departamento a revisar
- Completar Checklist:
- Marca las áreas revisadas
- Sube fotos (antes, después, detalle)
- Selecciona estado final
- Agrega comentarios si es necesario
- Guardar: El sistema guarda todo automáticamente
checklist-app/
├── backend/
│ ├── models/ # Modelos de MongoDB
│ ├── routes/ # Rutas de la API
│ ├── services/ # Servicios (Google Drive)
│ ├── index.js # Servidor principal
│ └── seed.js # Datos iniciales
├── frontend/
│ ├── src/
│ │ ├── components/ # Componentes React
│ │ ├── App.js # Componente principal
│ │ └── index.js # Punto de entrada
│ └── public/ # Archivos públicos
└── README.md
- Las credenciales de Google Drive están excluidas del repositorio
- Las variables de entorno están en
.gitignore - Autenticación JWT para proteger las rutas
Este proyecto está bajo la Licencia MIT.
- Fork el proyecto
- Crea una rama para tu feature (
git checkout -b feature/AmazingFeature) - Commit tus cambios (
git commit -m 'Add some AmazingFeature') - Push a la rama (
git push origin feature/AmazingFeature) - Abre un Pull Request
Si tienes problemas o preguntas, abre un issue en GitHub.