Detalles del proyecto
Esto es una vision general del desarrollo que se llevo acabo en este proyecto.
Astro
Tailwind
React
Mongo DB
Zustand
Node
Descripción del proyecto
Fecha de termino: Octubre/2023
Nomad Energy es una aplicación web avanzada diseñada para optimizar el consumo energético en hogares. Utilizando una arquitectura Screaming y principios SOLID, la aplicación permite a los usuarios ingresar información detallada sobre su hogar, incluyendo secciones como sala, recámara, baño, etc. Los usuarios con planes de pago específicos acceden a un sofisticado panel de control que muestra resultados generales y específicos de consumo energético. Además, ofrece un conjunto de herramientas avanzadas, incluyendo la capacidad de descargar informes detallados y recibir recomendaciones personalizadas de un agente de inteligencia artificial para mejorar la eficiencia energética.
Caracteristicas principales
- Implementación de un sistema robusto de registro e inicio de sesión de usuarios con manejo seguro de autenticación.
- Integración de un sistema de suscripciones de pago utilizando Stripe, con webhooks para actualización en tiempo real del estado de suscripción.
- Configuración detallada del hogar mediante una interfaz intuitiva para obtener resultados personalizados y precisos.
- Dashboard interactivo y altamente visual para la presentación de resultados de consumo energético, utilizando gráficos y estadísticas avanzadas.
- Integración de un agente de Inteligencia Artificial para proporcionar recomendaciones personalizadas de ahorro energético.
- Implementación de una API RESTful propia para el manejo eficiente de la información del usuario, tanto en la aplicación como en la base de datos MongoDB.
- Funcionalidades CRUD (Crear, Leer, Actualizar, Borrar) para la gestión completa de los datos del usuario.
- Sistema de generación y descarga de informes detallados basados en los datos del usuario y análisis de la IA.
- Optimización del rendimiento frontend mediante el uso avanzado de hooks de React y custom hooks.
- Implementación de un flujo de trabajo Git con branching strategies para un desarrollo colaborativo y eficiente.
- Realización de pruebas unitarias exhaustivas utilizando Jest y Mocha, con implementación de TypeScript para mejorar la calidad y mantenibilidad del código.
- Despliegue integral de la aplicación, incluyendo frontend, backend, y configuración de bases de datos en MongoDB y servicios AWS para escalabilidad.
Retos
- Creacion de Webhook (Stripe) para asignar correctamente plan de suscripción.
- Configuración correcta de proxy para comunicacion entre el front y back.
- Navegación dinámica.
- Contexto global para preservar los datos.
- Creación de servicio para calcular la enegía en KW por cada sección.
- Comunicación con la base de datos para modificar o borrar documento.