Inspiration
Every small business owner we've ever talked to has the same problem: they can sell, but they can't prospect. Cold outbound is a full-time job, and SDR salaries start at $60K. Meanwhile voice AI has quietly crossed a line where, if you don't know it's a bot, you don't know.
We wanted to find out: what does it feel like to hire 100 salespeople in two minutes?
What it does
You click one button. A voice agent asks you four questions about your business — what you sell, who buys it, where they are. While you're talking, we're already scraping your site to fill in the gaps.
Then it deploys. We pull 100 real leads from Google Maps that match your ICP, generate four script variants A/B/C/D, and place real outbound calls in parallel. A war-room dashboard shows every call in flight: dialing, ringing, connected, in discovery, pitching, handling objections, closing. Click any tile and a drawer slides open with the live transcript and audio.
No login. No settings. No text inputs anywhere in the app. The only thing you type is your voice.
How we built it
- Next.js + WebSockets for the front end — the war-room dashboard is one screen with 100 tiles streaming state updates in real time.
- ElevenLabs Conversational AI for both the intake agent (in-browser) and the outbound fleet (over phone).
- Twilio Voice for outbound dialing, with webhooks pushing every call state transition into our backend.
- Google Maps Places API to source leads matching the user's ICP and geography.
- LLM-powered scraper that hits the user's URL during intake and extracts services, pricing, geography into a structured profile that visibly populates on screen.
- A call state machine (Queued → Dialing → Ringing → Connected → Ice-break → Discovery → Pitch → Objection → Close) wired between Twilio events, the voice agent, and the dashboard via WebSocket.
- Lovable + Cursor for scaffolding, so we could spend our time on the parts that actually matter.
Challenges we ran into
- Twilio trial concurrency. We wanted 100 simultaneous calls. Twilio had other ideas. We rearchitected the tile grid so queued tiles look honest (no fake states) and the magic is the wall plus one live call, not raw throughput.
- Keeping the intake agent from rambling. Conversational agents love to keep talking. We hard-capped turns and forced a "ready to deploy?" prompt at turn six no matter what.
- WebSocket fan-out at scale. Streaming live state for dozens of concurrent calls without dropping frames took two refactors.
- Designing voice-first. Removing every text input in the app sounds simple. It is not. Every default Lovable component wants a form field.
- Stage demo risk. A planted phone in a noisy hackathon room over WiFi is its own engineering problem. We built a pre-recorded fallback we hoped we wouldn't need.
Accomplishments that we're proud of
- Zero text inputs in the entire product. The only click is START.
- A dashboard that genuinely looks like a Bloomberg terminal for AI sales reps.
- Real outbound calls to real businesses, end-to-end, in three hours.
- A planted phone in the audience picked up live on stage and had an actual conversation with our agent.
- The intake agent extracts a full business profile in under 90 seconds, conversationally, without ever feeling like a form.
What we learned
- Voice-first UX is not just "remove the forms." It changes how you think about confirmation, error recovery, and pacing.
- Orchestrating a fleet of voice agents is mostly a state-machine problem with a voice problem bolted on, not the other way around.
- Demo discipline beats feature count. Every hour we spent cutting scope made the final 60 seconds tighter.
- The hardest part of a 3-hour build isn't the code — it's deciding what not to build, and holding the line.
What's next for Cell For You
- A real feedback loop: agents learn objection patterns across calls and the script variants self-tune toward whichever one closes best.
- CRM and calendar integrations so booked meetings land somewhere useful.
- Local-time scheduling — never call a lead at 7 AM their time.
- Multi-language outbound (ElevenLabs already supports it; we just didn't have time to wire it).
- A per-variant performance dashboard so users can see why one opener is winning.
- A pricing model — likely per booked meeting, so we only get paid when our agents actually move the needle.
Built With
- cursor
- elevenlabs
- lovable
- wispr
Log in or sign up for Devpost to join the conversation.