A mobile-first Progressive Web App for real-time voice transcription using Mistral's Voxtral API.
- 🎙️ Live Transcription - Real-time voice-to-text as you speak
- ⏱️ Recording Controls - Start, stop, pause recording
- 📝 Transcript Management - Save, edit, search, delete transcripts
- 🌍 Multi-language - 13 supported languages
- 🌙 Dark Mode - Light, dark, and system themes
- 📱 PWA - Install on any device
- React 18 - UI framework
- Vite - Build tool
- Tailwind CSS - Styling
- Zustand - State management
- Dexie - IndexedDB wrapper
- Web Audio API - Audio capture
- Capacitor - Native mobile (coming soon)
- Node.js 18+
- A Mistral API key from console.mistral.ai
# Install dependencies
npm install
# Start development server
npm run dev- Open the app at
http://localhost:5173 - Go to Settings and enter your Mistral API key
- Tap the microphone button to start recording
- Speak and watch your words appear in real-time!
src/
├── components/ # UI components
│ ├── ui/ # Base components (Button, Card, etc.)
│ └── *.tsx # Feature components
├── screens/ # Page components
├── services/ # Business logic
├── stores/ # Zustand state
├── hooks/ # Custom React hooks
├── workers/ # AudioWorklet processor
├── types/ # TypeScript types
└── utils/ # Helper functions
This app uses the Mistral Voxtral realtime transcription API:
- WebSocket:
wss://api.mistral.ai/v1/audio/transcriptions/realtime - Model:
voxtral-mini-transcribe-realtime-2602 - Pricing: $0.001/minute
MIT