A realtime, live transcription and translation app that works locally using a browser. Built with Huggingface Transformer.js and Supabase Realtime.
🎙️ Realtime in-browser speech-to-text with OpenAI Whisper [transcriptionWorker.js]
📡 Broadcast to subscribed clients with Supabase Realtime. [broadcaster.jsx] [receiver.jsx]
🌏 Translate to 200 languages with Meta's NLLB-200 [translationWorker.js]
Watch a demo / tutorial
![vlc-demo](https://private-user-images.githubusercontent.com/10214025/356260806-5f436444-6ebc-48ab-9ed1-24de62afd933.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkxODAwNzQsIm5iZiI6MTczOTE3OTc3NCwicGF0aCI6Ii8xMDIxNDAyNS8zNTYyNjA4MDYtNWY0MzY0NDQtNmViYy00OGFiLTllZDEtMjRkZTYyYWZkOTMzLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTAlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEwVDA5MjkzNFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWVlNjhlN2U1OWVjOTU4YjM5MThlZmE4MDJiYzE3Yjk2MDdhNDJkOWVjODI4ODdlZGMzM2U4NGIxNjc4NTZiOTYmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.dSTnN8LrhCSfINap7RaRXn0JOxwEJ2CIjiwYlMIr1vo)
cp .env.local.example .env.local
.- Set your Supabase credentials in
.env.local
. - Run
npm run dev
- Set your secrets in the GitHub repository settings.
- Push to main to deploy.