Inspiration
Small and marginal farmers in India routinely lose ₹15,000–30,000 per harvest cycle to opaque mandi pricing, unreliable transport, and zero visibility into who's actually buying nearby. In our research (60+ farmer conversations), the same three complaints kept surfacing: "I don't know the real price," "I don't know who will pay more," and "I can't get a truck on time." Saarthi (सारथी — "charioteer/guide") exists to fix that: a farmer speaks a single sentence about their produce and gets an instant, ranked list of nearby buyers, transporters, and cold storage — with a price comparison and one-tap Call/Navigate actions.
What it does
Saarthi is a multilingual (Hindi/English) agri-logistics platform with four connected roles:
- Farmers list produce, get AI-ranked buyer/transporter recommendations, request pickups, and track orders.
- Buyers/Traders discover fresh produce nearby, place orders, and track fulfillment.
- Transporters see nearby logistics jobs, accept bookings, and get turn-by-turn navigation.
- Cold storage operators manage capacity and connect it into the discovery flow.
A conversational assistant ("Sarthi Didi"), powered by Gemini, extracts intent from natural-language input (e.g. "I have 80kg tomatoes ready tomorrow") and returns a ranked comparison: best immediate sale vs. best price if you can wait, distance-weighted, with a plain-language recommendation in the farmer's own language. Booking flows use live Google Maps routing (with an OpenStreetMap/OSRM fallback so the whole app still works with zero paid API keys), and a mock payment/split-ledger flow demonstrates the full order-to-payout lifecycle.
How we built it
- Frontend: React 19 + TypeScript on Vite, React Router for the multi-role app shell, Framer Motion/GSAP/Three.js for the landing experience and onboarding.
- AI: Google's Gemini API (
@google/genai) for intent extraction, transport-option generation, and the bilingual support assistant — with graceful mock fallbacks whenever no API key is configured, so the demo never breaks. - Maps/logistics:
@vis.gl/react-google-maps+ Directions API when a key is present; Leaflet + the public OSRM demo router otherwise. - Data: Supabase (Postgres) for shared farmer/buyer/transporter registries and self-onboarding; data.gov.in for live mandi commodity prices; OpenWeatherMap for weather-aware advisories.
- Payments: a mocked Razorpay-shaped checkout with a split-ledger view, ready to swap for real Razorpay keys.
- Deployment: Vite build shipped to Vercel via GitHub Actions, so every push to a branch gets its own preview and
mainauto-deploys to production. - We built a mock-first architecture throughout: every external dependency (AI, maps, payments, OTP) has a working offline/mock mode, so the product is fully demoable without any paid credentials — critical for a hackathon judging environment.
Challenges we ran into
- Designing for connectivity- and literacy-constrained users meant voice-first, Hindi-first UX had to be a first-class citizen, not a translation layer bolted on afterward.
- Keeping a full demo working with zero API keys — every AI/maps/payment integration needed a realistic mock path, which took real engineering discipline (schema-validated mock data, not just hardcoded strings).
- Reconciling a fast-moving MVP scope with a larger platform vision — mid-build we pivoted parts of the roadmap toward satellite-based crop intelligence (Google's AlphaEarth) and had to keep the working logistics core stable while building an AI advisory layer on top.
- Multi-role state and routing — one shell serving four very different user roles (farmer, buyer, transporter, cold storage) with a shared session/auth layer required careful separation between the
v2redesign and legacy components while both were in flight.
What we learned
That the "AI feature" farmers actually want isn't a chatbot — it's a fast, trustworthy answer to "who should I sell to, right now, for how much." Voice and language access matters more than UI polish. And building resilience-by-default (mock fallbacks everywhere) turned out to be as valuable for judging/demo day as it will be for real-world rollouts in low-connectivity regions.
What's next for Saarthi
We have been selected in sarvam AI startup program, and will be using the tools api given in Integrating satellite-based crop health signals (Google AlphaEarth) and weather-aware advisory (Gemini) to move from "sell better" to "grow better," real Razorpay settlement, and expanding live mandi price coverage and cold-storage partner density beyond our initial pilot region.
Built With
- data.gov.in
- docker
- framer-motion
- gemini-api
- github-actions
- google-gemini
- google-maps
- gsap
- i18n
- kubernetes
- leaflet.js
- node.js
- openstreetmap
- osrm
- postgresql
- pwa-(if-applicable)
- razorpay
- react
- react-router
- supabase
- tailwindcss-(if-used-in-v2)
- three.js
- typescript
- vercel
- vite
Log in or sign up for Devpost to join the conversation.