A web-based text-to-speech app powered by MiMo TTS. Design custom voices, clone any voice, and generate natural speech — all in your browser.
mimo-tts-reader-video-demo.mov
I'm using MiMo Open Platform — Xiaomi's most powerful AI (MiMo V2.5 etc). Sign up with my invite code: both get $2 API credits + 10% off your first plan.
Invite code: RRJPZE
Sign up → (Auto-filled on sign-up · Credits valid for 40 days)
- Podcast Production — Generate voiceovers for intros, outros, and ad reads. Choose from 100 voices or clone your own.
- Marketing Content — Create voiceovers for social media videos, ads, and presentations. Match your brand voice with custom descriptions.
- Accessibility — Listen to any text read aloud. Useful for dyslexia, visual impairments, or audio-first learning.
- E-Learning — Narrate training materials, courses, and tutorials with consistent, professional voices.
- Content Localization — Generate voiceovers in different accents (Australian, British, French, Japanese) for international audiences.
- 100 preset voices across 6 categories (Conversational, Professional, Expressive, Youthful, Character, Accent)
- Voice cloning from audio file or microphone recording
- Voice design with editable descriptions for fine-tuned control
- Dark/light theme with system preference detection
- Download as WAV or MP3 for any project
- Non-interrupting generation — keep listening while generating new audio
- Responsive design — works on desktop and mobile
- Keyboard shortcuts —
⌘+Enterto generate
- Get an API key from MiMo TTS
- Open the app at wsamuelw.github.io/mimo-reader
- Add your API key in Settings (top-right corner)
- Enter text, pick a voice, and hit Generate
- Select Voice Design mode
- Choose a voice from the list (or use the search/filter)
- Type or paste your text
- Click Generate or press
⌘+Enter - Download as WAV or MP3
- Select Voice Clone mode
- Upload an audio file or record directly
- Type or paste your text
- Click Generate
- Download the cloned voice output
- Click the play icon on any voice to hear a sample
- Edit the voice description to fine-tune tone, accent, or pace
- Use the Random button to generate new voice descriptions
The app uses the MiMo TTS API with the following models:
| Model | Use Case |
|---|---|
mimo-v2.5-tts-voicedesign |
Custom voices via description |
mimo-v2.5-tts-voiceclone |
Voice cloning from audio sample |
mimo-v2.5-tts |
Preset voices with dialect tags |
| Region | URL |
|---|---|
| Singapore | https://token-plan-sgp.xiaomimimo.com/v1/chat/completions |
| China | https://token-plan-cn.xiaomimimo.com/v1/chat/completions |
| Standard | https://api.xiaomimimo.com/v1/chat/completions |
- Frontend: Vanilla HTML, CSS, JavaScript (single-file app)
- API: MiMo TTS v2.5 (OpenAI-compatible endpoint)
- Audio: Web Audio API for processing, lamejs for MP3 conversion
- Fonts: JetBrains Mono
- Chrome 90+
- Firefox 88+
- Safari 14+
- Edge 90+
| Shortcut | Action |
|---|---|
⌘+Enter |
Generate speech |
Escape |
Cancel generation |
Space |
Play/pause audio |
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is open source and available under the MIT License.
- MiMo TTS for the TTS API
- JetBrains Mono for the font
- lamejs for client-side MP3 encoding
