Hi, I'm Charan.
I build AI systems that have to hold up when it counts — the kind where “looks great in a notebook” isn't the finish line, it's the part right before the hard part.
Before production LLMs, I wrote real-time control code for jet engines at DRDO. That job teaches you something the web rarely does: a millisecond of lag isn't a bug — it's a flameout. I've carried that allergy to hand-waving into everything I've built since, MeetEase included.
MeetEase started as a simple question: what would a video app feel like if the AI weren't a bolt-on? So I wired the microphone straight through to a live transcript and handed that transcript to Claude. The result listens, summarizes, and pulls action items while you're still talking.
What I learned building this
Five things MeetEase taught me — the technical and the human.
Graceful degradation is a feature, not an apology.
MeetEase talks to three external services — Clerk, Stream, Anthropic. Any of them can be missing and the app still loads instead of throwing a 500. That one decision is the difference between a demo that breaks on a fresh deploy and one a stranger can actually open.
The browser already ships a speech engine.
Live transcription runs on the Web Speech API — no paid STT, no extra latency, no key to leak. Sometimes the most impressive feature is the one you didn’t pay for.
Streaming an LLM is mostly plumbing.
Parsing Anthropic’s SSE stream, re-emitting only the text deltas, and keeping the client dumb made the copilot feel instant. The model is the easy part; the pipe around it is the work.
Latency is a UX decision, not an afterthought.
In a live call, a spinner that lingers reads as “broken,” not “loading.” Designing the empty, loading, and error states first changed how the whole thing felt.
The boring 20% is what makes it feel real.
Favicons, OG cards, missing-key fallbacks, an honest 404 — none of it demos well. All of it is what separates “works on my machine” from “ship it.”
Have an idea? Let's talk.
Want to build something — or break something interesting? I'm always up for a good problem. The fastest way to reach me is below.