I shipped Lovenly — an international dating app with live message translation in 50+ languages A while ago, I watched a friend trying to date someone in Tokyo. He spoke no Japanese. She spoke no French. They were doing the DeepL copy-paste dance every night, switching tabs, breaking the flow. He told me "I don't even know if she's funny anymore — the translation kills the timing." I'm a solo dev. I figured: real-time translation inside the chat shouldn't be a "premium" gimmick — it should be the product. So I built Lovenly ( lovenly.online ) — an international dating site where the messaging layer is the translation layer. This post is the honest stack write-up . Brand new in production, so no big traffic numbers to wave around — just the technical choices and what bit me. The stack Layer Choice Why Framework Next.js 16 (App Router, RSC) Server components let me query Supabase server-side without an API layer. Streaming for /messages .…