## Inspiration
Smallholder farmers are the backbone of global agriculture, but they are bogged down by massive administrative inefficiencies. A simple task like finding the best price for fertilizer or checking if a local market is accepting produce can take hours of phone calls, wasting precious time and money. We wanted to give these farmers a dedicated "assistant" that handles the logistics and negotiations, allowing them to focus on what they do best: farming.

## What it does
MoboFarmer is a digital farm management dashboard powered by **CALL-E**, an autonomous voice AI engine. Instead of a farmer making ten phone calls to find supplies, they simply type a request into the app (e.g., *"Find me 50 bags of maize seed and check the price"*). MoboFarmer spins up an AI agent that physically calls local suppliers on the telephony network, has natural conversations to check stock and negotiate, and returns the structured data directly to the farmer's dashboard. 

## How I built it
The application is a full-stack **Next.js 16** app built with **TypeScript** and styled using **Tailwind CSS**. 
* **Backend & Telephony:** We used Next.js API routes to integrate the **CALL-E SDK**, which handles the actual voice agent generation and phone calls. 
* **Database:** We utilized **Firebase Firestore** to persist the extracted JSON data and call transcripts.
* **Frontend:** To handle the long-running nature of phone calls, we implemented an asynchronous polling architecture using **SWR** on the frontend, ensuring the UI updates in real-time as the AI agent completes its tasks.

## Challenges I ran into
Integrating real-time telephony with a serverless web application was a major hurdle. Phone calls take time (often 1–3 minutes), which easily exceeds standard serverless function timeouts. We had to design an asynchronous polling pattern where the server initiates the call, and the frontend intelligently polls for the status while the AI negotiates over the phone. Additionally, ensuring the AI consistently extracted the correct structured data (price, quantity, delivery dates) from unpredictable human conversations required extensive prompt tuning.

## Accomplishments that I'm proud of
I'm incredibly proud of successfully bridging a modern web dashboard with physical, real-world telephony. Seeing the AI agent actually call a phone number, negotiate like a human, and drop clean, actionable data onto the dashboard feels like magic. It’s a tangible solution that directly addresses a massive real-world bottleneck.

## What I learned
I learned a tremendous amount about orchestrating AI agents within a Next.js environment. It forced me to think deeply about handling long-running asynchronous tasks, designing robust API architectures, and writing prompts that can handle the unpredictability of human speech over a phone line.

## What's next for MoboFarmer
Next, we want to introduce SMS and WhatsApp integrations so farmers can trigger CALL-E agents using basic feature phones—removing the need for a smartphone or web app entirely. We also plan to expand the AI's capabilities so it can not only check prices but actually execute purchases and book transport providers autonomously, creating a fully closed-loop agricultural supply chain.

Built With

Share this project:

Updates

Submission history