MDV Sensores
Aplicación con una 'arquitectura SPA con Backend API RESTful', que sirve para la administración de usuarios, equipos electrónicos, y datos de funcionamiento de equipos electromecánicos.
📝 caracteristicas
Esta aplicación, con una arquitectura SPA (Single Page Application) y un backend API RESTful, está diseñada para la administración de usuarios, equipos electrónicos y datos de funcionamiento de equipos electromecánicos. Los datos se monitorean 24/7 y el sistema notifica cambios críticos a los responsables de cada área.
Además, el servidor ejecuta cronJobs para supervisar los dispositivos, verificando que no excedan los niveles de alarma predefinidos. Si se superan estos umbrales, se envían notificaciones por correo electrónico a los responsables del área mediante NodeMailer.
🛠️ habilidades
En este proyecto, apliqué una variedad de habilidades técnicas para lograr un resultado robusto y funcional:
- 🎨 Figma: Lo utilicé para el diseño integral de la interfaz gráfica. Creé componentes para las distintas secciones, aplicando principios de Atomic Design, lo que facilitó la posterior implementación en React.js.
- ⚛️ React.js: Siguiendo el diseño de Figma, desarrollé el frontend de la aplicación web consumiendo la API. Para ello, empleé herramientas como Vite.js, useContext, Axios, dotenv, crypto-js y use-local-storage-state.
- 🚀 Node.js: Implementé un servidor web con Express como una API que sirve datos desde una base de datos MySQL. Todas las consultas se escribieron sin el uso de un ORM. Se crearon alrededor de 40 endpoints, la mayoría protegidos con un middleware que utiliza JSON Web Token (JWT) y bcrypt para el almacenamiento seguro de datos críticos.
- ⏰ CronJobs y Notificaciones: El servidor ejecuta tareas programadas (cronJobs) para monitorear constantemente los datos de los dispositivos. Si se detectan anomalías que superan los niveles de alarma, se envían alertas por correo electrónico a los responsables utilizando NodeMailer.
🚀 tecnologias
Para el desarrollo de esta aplicación, utilicé una variedad de tecnologías y herramientas que me permitieron crear una experiencia de usuario atractiva y funcional. Entre las principales tecnologías que empleé se encuentran: React.js, Node.js, Express, MySQL, JWT, bcrypt, Nodemailer, Figma, Vite.js y Axios.