Building NEONPLUS: My Journey Through the 10 Days of AI Voice Agents Challenge ๐
Over the past ten days, I took part in the 10 Days of AI Voice Agents (VoiceForBharat Edition) challenge. The goal was simple yet ambitious: build a production-ready, highly responsive voice agent tailored for Indian users from scratch.
Throughout this journey, every single voice component was powered by Murf Falcon, the fastest TTS API, using expressive and natural voices like Anisha, Samar, and Pooja.
Here is the complete story of what I built, the hurdles I faced, and how you can build your own.
1. Introducing NEONPLUS: The Problem & Solution
- The Problem: Many automated support and interactive systems fail to handle Indian multi-locale contexts, often forcing unnatural English accents or failing to recognize code-mixed conversations.
- Who it is for: Indian users seeking instant, natural, and localized voice assistance in their native language scripts.
- Why Voice? Voice removes literacy barriers, making technology instantly accessible, conversational, and intuitive for everyday users.
2. Core Features Built Over 10 Days
- Ultra-Fast TTS: Integrated Murf Falcon for lightning-fast speech synthesis, delivering crisp and human-like delivery using recommended voices.
- Multilocale & Native Script Compliance: Configured Deepgram STT (language="multi") and enforced strict prompt guidelines so the LLM responds in native scripts (e.g., Hindi in Devanagari like เคจเคฎเคธเฅเคคเฅ instead of romanized text).
- Advanced Capabilities: Equipped the agent with memory for returning users, custom tools for fetching data, automated outbound calling, human escalation/hand-offs, and specialist agent routing.
- Analytics Dashboard: Built a tracking backend using Python, SQLite, and Chart.js to monitor call metrics and outcomes.
3. The Hardest Part & How I Solved It
- The Challenge: While building the call analytics dashboard and testing local endpoints, I ran into an annoying environment glitch where my local frontend interface refused to load or show up properly on localhost:3000.
- What I Tried & The Fix: Initially, I checked my port bindings and routing rules. After debugging the Flask application structure and ensuring proper template rendering paths, I cleared the local port conflict and successfully re-hosted the SQLite-backed analytics dashboard, bringing the entire monitoring system online.
4. How You Can Build Your Own Voice Agent
If you want to start building, here is a quick practical guide:
Main System Components:
- Speech-to-Text (STT): Deepgram (configured for multi-language detection).
- LLM: Google Gemini (for processing logic and conversation flow).
- Text-to-Speech (TTS): Murf Falcon (for low-latency, hyper-realistic voice output).
- Real-Time Transport: LiveKit Agents framework.
import logging
from dotenv import load_dotenv
from livekit.agents import JobContext, WorkerOptions, cli
from livekit.agents.multimodal import MultilingualModel
from livekit.agents.voice import AgentSession
from livekit.plugins import deepgram, google, murf, silero, tokenize
load_dotenv()
logger = logging.getLogger("voice-agent")
async def entrypoint(ctx: JobContext):
vad = silero.VAD.load()
system_prompt = (
"You are a helpful voice assistant. "
"LANGUAGE & SCRIPT: Always write every language in its own native script. "
"Hindi -> Devanagari (เคจเคฎเคธเฅเคคเฅ), never romanized."
)
session = AgentSession(
stt=deepgram.STT(model="nova-3", language="multi"),
llm=google.LLM(model="gemini-3.5-flash-lite", system_instruction=system_prompt),
tts=murf.TTS(
voice="Anisha",
style="Conversation",
tokenizer=tokenize.basic.SentenceTokenizer(min_sentence_len=2),
text_pacing=True,
),
turn_detection=MultilingualModel(),
vad=vad,
preemptive_generation=True,
)
await session.start(room=ctx.room)
logger.info("Voice Agent started successfully with Murf Falcon!")
if __name__ == "__main__":
cli.run_app(WorkerOptions(entrypoint_fnc=entrypoint)
Running the Project Locally:
-Clone the repository and install dependencies.
-Set up your environment variables (.env) for Deepgram, LiveKit, Google Gemini, and Murf Falcon without exposing private API keys publicly.
-Run the worker script to connect to your LiveKit room and test live conversations.
-Check out the public repository and starter template for full implementation details: Murf LiveKit Starter.
Links & Resources
-Challenge Repository: Voice for Bharat Challenge 2026
-Documentation: Murf Falcon 2 Model Documentation
AND LASTLY
A huge shoutout to the amazing teams at Murf AI, LiveKit, Deepgram, and Google Gemini for organizing the Voice for Bharat challenge and providing such powerful tools to push the boundaries of conversational AI. Building with the lightning-fast Murf Falcon TTS and utilizing expressive voices like Anisha, Samar, and Pooja has been an absolute game-changer for creating realistic, native-script compliant voice experiences.
Thank you for following along with my 10-day journey! Let's keep building the future of voice tech. ๐
Tags / Hashtags:
Top comments (0)