Iris
Global supply chains are more fragile than ever, but the tools companies use to monitor them haven't kept up. Risk signals — geopolitical events, port disruptions, sanctions, supplier instability — are scattered across news sources, databases, and reports. By the time a procurement team hears about a problem, it's already too late to act. There's no single place to get a live, intelligent picture of where your supply chain is exposed right now.
What we built
Iris is a supply chain risk intelligence platform with an interactive voice agent interface. It ingests and maps supplier and logistics data onto an interactive 3D globe, surfaces risk signals in real time, and lets users query and explore their supply chain exposure through a conversational voice agent — no dashboards to click through, no reports to read. Just ask Iris what's at risk and where.
Inspiration
We wanted to build a tool that made supply chain risk feel tangible — something a non-technical procurement manager could actually pick up and use without a training session. The idea of pairing a live global risk map with a voice agent that could answer plain-English questions just clicked for us, and we ran with it.
How we built it
Next.js (App Router)
- full-stack framework handling both the frontend UI and API routes for data ingestion and voice agent logic Prisma + PostgreSQL
- ORM and database layer for storing supplier records, risk events, and geographic metadata; seeded via a custom ingestion script react-globe.gl + Three.js
- rendered an interactive 3D globe visualization of the supply chain network, with suppliers and risk zones plotted as nodes and overlays Twilio
- powered the voice agent interface, handling inbound/outbound calls and connecting spoken queries to the backend intelligence layer Zod
- runtime validation for all API inputs and data ingestion pipelines to keep bad data out of the system TypeScript
- end-to-end type safety across the entire codebase
What we learned
We learned how quickly a project scope can balloon when you're dealing with real-world data messiness (ingesting and normalizing supplier data from scratch is genuinely hard!!). We also got a much deeper appreciation for how voice interfaces force you to think about UX differently. there's no hiding behind a confusing UI when the user is just talking to your app.
Challenges we Faced
Twilio was simultaneously our most exciting and most painful integration. Getting the voice agent to reliably hand off spoken input to our backend, process it, and respond with something coherent (all within the latency window where a phone call still feels natural!) was brutal. We kept running into timing issues where the Twilio webhook would fire before our response was ready, causing the agent to either cut itself off mid-sentence or respond with dead silence. We burned a significant chunk of the hackathon just tuning webhook response times and restructuring our async flows to get it to feel smooth.
What's Next
With a proper data partnership with a trade intelligence provider, Iris could be a real SaaS product sold to procurement and logistics teams. The voice agent layer alone is a meaningful differentiator in a market full of static dashboards. The natural next step is adding proactive alerting, so Iris calls you when a risk threshold is crossed, rather than waiting to be asked.
Built With
- app-router
- next.js
- postgresql
- prisma
- react-globe.gl
- three.js
- twilio
- typescript
- zod
Log in or sign up for Devpost to join the conversation.