En esta guía vas a clonar el repositorio, configurar el entorno, levantar el backend de FastAPI, enviar tu primera lectura de sensor simulada y ver el sistema de análisis IA en funcionamiento — todo desde cero, en menos de 15 minutos. No necesitas hardware físico para completar el quickstart; la guía incluye un simulador IoT en Python que replica el modelo climático de Córdoba, Colombia.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/ricardomb-tech/surqo/llms.txt
Use this file to discover all available pages before exploring further.
Prerrequisitos antes de comenzar:
- Python 3.11+ y uv (gestor de paquetes de Astral — instalación 10–100× más rápida que pip)
- Node.js 20+ (para el frontend)
- Cuentas gratuitas en: Supabase, Upstash Redis, HiveMQ Cloud, Groq
Pasos
Instalar dependencias con uv
Instala todas las dependencias del proyecto con un solo comando.
uv sync lee pyproject.toml y crea el entorno virtual automáticamente:Configurar variables de entorno
Copia el archivo de ejemplo y completa tus credenciales:Las variables mínimas requeridas para levantar el backend son:
Levantar el backend
Inicia el servidor de desarrollo de FastAPI:El backend estará disponible en http://localhost:8000/docs con la documentación interactiva de Swagger. Puedes verificar que el servicio está sano con:Respuesta esperada:
Enviar tu primera lectura de sensor
Envía una lectura simulada de un nodo ESP32 al endpoint de sensores. Reemplaza El backend calcula automáticamente el VPD (Déficit de Presión de Vapor) usando la ecuación de Magnus y persiste la lectura en PostgreSQL. Si la humedad de suelo cae por debajo del 25% o el VPD supera 1.6 kPa, se genera una alerta automática.
<your-jwt-token> con un token JWT de Supabase Auth y <your-farm-uuid> con el UUID de una finca creada previamente en POST /api/v1/farms/:Levantar el frontend
Desde la raíz del proyecto, instala dependencias del frontend y crea el archivo de variables de entorno:Crea el archivo Luego inicia el servidor de desarrollo:El frontend estará disponible en http://localhost:3000. Las rutas protegidas (
.env.local con las siguientes variables:/dashboard, /farms, /sensors, /analyze, /alerts) requieren autenticación con Supabase Auth.Simular hardware IoT sin un ESP32 físico
Si no tienes un nodo físico disponible, el repositorio incluye un simulador IoT en Python que replica el modelo climático de Córdoba, Colombia (temperatura senoidal 22°C→34°C, humedad inversa, lluvia probabilística, UV solar).El simulador puede enviar lecturas vía HTTP al API local o vía MQTT a HiveMQ Cloud, replicando exactamente el comportamiento de un nodo ESP32 en campo.
Próximos pasos
Con el backend corriendo y las primeras lecturas almacenadas, puedes explorar el resto de la plataforma:Construir el nodo ESP32
Lista de componentes (~$15 USD), conexiones GPIO, configuración de
config.h y comandos PlatformIO para compilar y subir el firmware al hardware real.API completa
Referencia de todos los endpoints REST: fincas, sensores, análisis IA, alertas, usuarios y KPIs. Incluye esquemas de request/response y códigos de error.
Arquitectura del sistema
Diagrama del flujo completo: ESP32 → MQTT → FastAPI → PostgreSQL → WebSocket → Next.js. Stack tecnológico, modelos de dominio y decisiones de diseño.