ECO2ECO2

Tus plantas te dicen qué necesitan.

ECO2 reconoce la especie con una foto, te recuerda cuándo regar y, con un sensor y una bomba conectados, mide el aire de tu casa y riega por ti.

INTEC

Proyecto final de Ingeniería de Software en INTEC, 2026.

Clip del escáner de plantas de ECO2

Lo que hace en tu teléfono

Identifica con una foto

Un modelo entrenado por el equipo corre en el propio teléfono y reconoce 18 especies. Cuando no está seguro, consulta Plant.id sin que tengas que hacer nada.

Recuerda cada cuidado

Riego, abono, poda y más, con avisos push y por correo en el horario que elijas.

Convierte el cuidado en un juego

Ganas semillas, subes de nivel y completas misiones. Las semillas se canjean en la tienda por avatares y macetas.

Calcula tu huella verde

Estima cuánto CO2 absorbe tu jardín según las especies que tienes y te muestra el total acumulado.

Plan O2+ sin límites

Plantas y escaneos ilimitados. El cobro funciona con PayPal en modo de pruebas, sin dinero real.

Pantalla del escáner de plantas de ECO2
El escáner
Pantalla Mi Jardín con las plantas del usuario
Mi jardín
Pantalla de cuidados y recordatorios de una planta
Cuidados y recordatorios
Pantalla de misiones y logros
Misiones y logros
Pantalla de huella verde con el CO2 absorbido
Huella verde

La app funcionando, de principio a fin

ECO2 no está disponible para descargar. Este sitio muestra cómo funciona con capturas y grabaciones de la versión presentada.

Dos dispositivos reales conectados al mismo jardín

Cada placa ESP32 habla con la API de ECO2 por HTTPS, igual que la app, y se identifica con una clave propia en lugar de una sesión de usuario.

Cómo viajan los datos de los dispositivos El sensor de CO2 y el sensor de humedad con la bomba se conectan a sendas placas ESP32. Ambas envían sus datos por HTTPS a la API de ECO2, que alimenta la app con avisos y registros. Sensor de CO2mide ppm ESP32WiFi Humedad y bombarelé y tanque ESP32WiFi API de ECO2HTTPS Appavisos y registro Cómo viajan los datos de los dispositivos El sensor de CO2 y el sensor de humedad con la bomba se conectan a sendas placas ESP32. Ambas envían sus datos por HTTPS a la API de ECO2, que alimenta la app con avisos y registros. Sensor de CO2mide ppm Humedad y bombarelé y tanque ESP32WiFi ESP32WiFi API de ECO2HTTPS Appavisos y registro

Sensor de CO2

Mide el aire de la habitación y manda cada lectura a la API. Cuando pasa de 2000 ppm, la app envía una notificación para que ventiles, y no vuelve a avisar hasta que el nivel baja de 1800 ppm.

Riego automático

Un sensor de humedad calibrado decide cuándo regar. Una bomba, activada por un relé, saca el agua de un tanque, y el riego queda anotado en la app como si lo hubieras registrado tú. También hay un botón para regar a mano.

Los dos dispositivos ESP32 de ECO2: el sensor de CO2 y el riego automático

Lo que pasa detrás de la app

Cuentas, seguridad y publicaciones las resuelve el servidor, para que la app solo tenga que mostrar el resultado.

Verificación por correo

Al registrarte llega un enlace de verificación por correo. Al confirmarlo ganas 10 semillas, y abrir el enlace otra vez no repite el premio.

Límites que cuidan el servicio

Mientras la cuenta no está verificada, el escaneo diario queda en 1, incluso con O2+. Al verificarla se aplica el límite diario normal de tu plan.

Acceso y sesiones seguras

Inicio con correo o con Google, recuperación de contraseña por correo y sesiones con JWT RS256 que se renuevan solas.

Correo de verificación de cuenta de ECO2

Cada cambio que llega a la rama principal se publica solo, sin pasos manuales.

  1. Push a main Los cambios se suben al repositorio.
  2. GitHub Actions El flujo corre solo y prepara el despliegue.
  3. Azure App Service Publica la nueva versión del servidor.
  4. api.eco2app.com Responde por HTTPS con certificado administrado.

Un panel para administrar la app

Un backoffice hecho con AdminJS. Desde ahí se revisan y editan los datos de la app y se activan o desactivan funciones, como el cobro con PayPal, sin tocar el código.

Inicio de sesión del panel de administración
Acceso Acceso protegido con inicio de sesión.
Panel de administración de ECO2
El panel Datos de la app y configuración de funciones.
Documentación interactiva de la API de ECO2
Documentación de la API Referencia interactiva de los endpoints, generada con Scalar.

Cómo está hecho

App

  • Flutter con Provider
  • TensorFlow Lite, MobileNetV2 entrenado en Google Colab
  • Firebase Authentication y Cloud Messaging

Servidor

  • Node.js, Express y TypeScript con Clean Architecture
  • Prisma y PostgreSQL
  • JWT RS256 con renovación rotativa de sesión
  • PayPal Orders v2 en modo de pruebas
  • Más de 280 pruebas con Jest y Supertest
  • Despliegue automático en Azure con GitHub Actions
  • Panel AdminJS y documentación de la API con Scalar
  • Correos transaccionales con Resend

Hardware

  • Placas ESP32 programadas en Arduino
  • Sensor de CO2 y sensor de humedad calibrado
  • Bomba de agua con relé
  • Autenticación por clave de dispositivo

El equipo

  • Jaime Hernández

    Líder Backend & DevOps

    Arquitectura REST, Docker, CI/CD en Azure, modelo TFLite propio e integración IoT.

  • Ismael Moquete

    Full-Stack & Product Owner

    Backoffice AdminJS, lógica O2+, huella CO₂, tienda, biometría, Google Auth e i18n.

  • Ambar Tiburcio

    Diseño UX/UI & Research

    Prototipado interactivo en Figma, diseño de avatares e investigación de usuarios.

  • Frank Coste

    Líder Frontend & UI

    Scaffold Flutter, vistas del dashboard, flujo de cámara para escaneo y temas.