Inspiration

El reto que que nos propusieron fue este: Son las 5:40 a.m. en una tienda de donas de un aeropuerto. La gerente mira la bandeja casi vacía y sabe que a las 7:00 el vuelo de Chicago hará que la cola llegue hasta la puerta. Si pide de menos, perderá ventas. Si pide de más, tirará producto, porque los perecederos de Glazed Co. duran de 1 a 3 días. El sistema registra pocas ventas esa mañana y concluye que a la gente le interesan menos las donas. El próximo pedido será más pequeño, y el ciclo se repite. Nadie decidió vender menos: simplemente se quedó sin producto. Esa escena nos quedó dando vueltas, y se volvió nuestra excusa para aprender. Queríamos construir pronósticos de series de tiempo con validación temporal de verdad, levantar un backend con FastAPI, conectar un asistente a la base de datos con FastMCP y Gemini, y probar qué aporta una señal externa como TrendsAPI. Pero lo que más nos motivó fue el desafío: trabajar con datos imperfectos sin maquillarlos, y construir un sistema que sepa decir "no lo sé" cuando no tiene con qué respaldar una cifra.

What it does

NovaTrend es un dashboard que abre en Todas las sucursales y baja a cada tienda con un filtro. Reúne: • Margen con definiciones explícitas: monto y porcentaje por separado, calculados con ventas netas menos costo (unidades × costo unitario). El proyecto no inventa costos ni devoluciones. • Pronóstico semanal de 1 a 4 semanas: los días con quiebre de stock o cierre no cuentan como demanda baja. • Recomendaciones de reabastecimiento: consideran el tiempo de entrega real, el cumplimiento del proveedor, el lote mínimo y la vida útil. • Alertas de anomalías: se acompañan de contexto (promociones, feriados, cierres), que es una coincidencia registrada y no una causa. • Un asistente en lenguaje natural: convierte preguntas en SQL de solo lectura. • Estrategias comerciales: usan tendencias de hashtags de TikTok (TrendsAPI), pero solo con hashtags que el negocio haya relacionado explícitamente con el catálogo.

How we built it

Usamos Python con uv, pandas y scikit-learn, FastAPI, PostgreSQL en Tiger Data (solo con SELECT), Gemini y FastMCP. El dashboard es un único HTML sin CDN ni dependencias de frontend, y expone 11 rutas. El pronóstico se valida con TimeSeriesSplit de origen móvil para evitar fuga de datos. Gemini trabaja con temperatura cercana a cero para análisis y SQL, y con temperatura cercana a 1 para proponer estrategias de marketing personalizadas.

Challenges we ran into

Los datos iniciales traían errores sin lista. Había SKUs inexistentes, duplicados, ventas durante cierres y precios con intervalos solapados. Además teníamos varias ideas que no sabiamos incialmente como implementar, por ejemplo, el tener un panel de tendencias actualizado en tiempo real, para resolver eso, investigamos cómo hacerlo, lo qué son los MCP's y cómo funcionan. Otro gran reto que enfrentamos fue el manejo del tiempo, al tener tantas ideas tuvimos que priorizar cuáles eran las más importantes y enfocarnos en ellas.

Accomplishments that we're proud of

Aprendimos a usar muchas nuevas tecnologías y conceptos, así como manejo de APIs externas, integración con Inteligencia Artificial.

What we learned

Aprendimos a usar APIs externas, MCP's, limpiar datos, consultas automáticas. También entendimos que al momento de desarrollar una solución debemos enfocarnos en la perspectiva del usuario final, en las necesidades del cliente, para que sea una solución efectiva.

What's next for NovaTrend

  1. Mejorar la cobertura de costos y calibrar las alertas con casos etiquetados, que hoy no existen.
  2. Probar con gerentes de sucursal reales. Para el desarrollo se usaron datos sinteticos.

Built With

Share this project:

Updates

Submission history