brota
Plataforma IoT para monitoreo de plantas en tiempo real
El Problema
El cuidado de plantas depende de datos que los usuarios simplemente no tienen. Humedad, temperatura y luz son invisibles sin las herramientas correctas.
La Solución
Un sistema IoT completo que mide condiciones ambientales a través de sensores custom, procesa datos en tiempo real y notifica a los usuarios cuando sus plantas necesitan atención.
Impacto
De datos invisibles a información accionable — el cuidado de plantas pasa a ser data-driven en vez de adivinanza.
Arquitectura
Microcontroladores ESP32 con sensores ambientales (humedad, temperatura, luz)
API Node.js que procesa datos de sensores, gestiona dispositivos y maneja lógica de negocio
Base de datos dual: PostgreSQL (Neon) para datos estructurados, Supabase para auth y realtime
App Flutter multiplataforma para iOS y Android con emparejamiento BLE de dispositivos
Dashboard Next.js para visualización de datos y gestión de dispositivos
Características Clave
Sensores IoT
Monitoreo ambiental en tiempo real con ESP32
Provisioning BLE
Emparejamiento y configuración de dispositivos via Bluetooth
Notificaciones Push
Alertas automáticas cuando las plantas necesitan atención
Dashboard de Plantas
Datos visuales con gráficos históricos y tendencias
Integración de Pagos
Gestión de suscripciones Stripe para features premium
Base de Datos Dual
Arquitectura PostgreSQL + Supabase para diferentes necesidades
+6 more features in the repo
Bajo el Capó
Arquitectura Dual de Base de Datos
PostgreSQL (Neon) para datos transaccionales estructurados, Supabase para auth y suscripciones en tiempo real — cada base de datos maneja lo que mejor sabe hacer.
- Client request
- API routes to correct DB
- Neon for structured data
- Supabase for auth/realtime
Sistema de Códigos de Error
Códigos de error estructurados mapeados a keys i18n — cada error es trazable desde el backend a la UI con soporte de locale completo.
- Backend generates error code
- Code mapped to locale
- Frontend renders localized message
Firmware Thin Client
El ESP32 actúa como thin client: lee datos de sensores crudos, transmite via BLE y deja que el backend maneje todo el procesamiento y las decisiones.
- ESP32 reads sensors
- Sends raw data via BLE
- Backend processes and decides
- App displays result