A modern, responsive Text-to-Speech (TTS) web application built with Bootstrap 5 that converts text into speech in multiple languages. Features a beautiful UI with gradient backgrounds, smooth animations, and comprehensive speech controls.
- 🌍 22 Language Support - Convert text to speech in multiple languages
- 🎙️ Voice Selection - Choose from available system voices for each language
- ⚡ Real-time Controls - Play, pause, resume, and stop speech playback
- 🎛️ Audio Controls - Adjust rate, pitch, and volume with live sliders
- 📝 Text Management - Save, load, and clear text with confirmation dialogs
- 🎨 Bootstrap 5 Design - Beautiful, responsive interface with gradient backgrounds
- 📱 Mobile Responsive - Optimized for all screen sizes and devices
- 🍃 Smooth Animations - Fade-in effects and hover transitions
- 🔔 SweetAlert2 Integration - Beautiful, customizable alert dialogs
- 💫 Loading Indicators - Visual feedback during speech synthesis
- 💾 Persistent Storage - Automatically saves converted texts to
assets/data/data.json
- 📚 Recent Texts History - View and replay recently converted texts
- ⚙️ Settings Persistence - Remembers last used language and audio settings
- 🔄 One-click Restore - Quickly reload previous texts with their original settings
-
Clone the repository:
git clone git@github.com:jmrashed/text-to-speech-with-language-selection.git
-
Navigate to project directory:
cd text-to-speech-with-language-selection
-
Open in browser:
- Simply open
index.html
in your web browser - No server setup required - runs entirely in the browser
- Simply open
- Select Language & Voice - Choose from 22 supported languages and available system voices
- Enter Text - Type or paste text (up to 500 characters) in the textarea
- Adjust Settings - Fine-tune rate, pitch, and volume using the sliders
- Convert to Speech - Click the green "Convert to Speech" button
- Control Playback - Use pause, resume, and stop buttons as needed
- Save & Load - Save frequently used texts for quick access
- View History - Access recent conversions from the "Recent Texts" section
Language | Code | Language | Code |
---|---|---|---|
English (US) | en-US | Ukrainian (UA) | uk-UA |
French (FR) | fr-FR | Russian (RU) | ru-RU |
Hindi (IN) | hi-IN | Polish (PL) | pl-PL |
Arabic (AE) | ar-AE | Turkish (TR) | tr-TR |
Spanish (ES) | es-ES | Chinese (CN) | zh-CN |
Portuguese (PT) | pt-PT | Korean (KR) | ko-KR |
Italian (IT) | it-IT | Kazakh (KZ) | kk-KZ |
Indonesian (ID) | id-ID | Azerbaijani (AZ) | az-AZ |
German (DE) | de-DE | Romanian (MD) | ro-MD |
Japanese (JP) | ja-JP | Dutch (NL) | nl-NL |
Uzbek (UZ) | uz-UZ | Georgian (GE) | ka-GE |
- Frontend Framework: Bootstrap 5.3.0
- JavaScript Library: jQuery 3.7.1
- Alert System: SweetAlert2
- Icons: Font Awesome 6.0.0
- Speech API: Web Speech API (SpeechSynthesis)
- Storage: LocalStorage + JSON file structure
- Styling: Custom CSS with gradients and animations
text-to-speech-with-language-selection/
├── assets/
│ ├── css/
│ │ └── style.css # Custom styles and responsive design
│ ├── data/
│ │ └── data.json # Persistent data storage
│ └── js/
│ └── main.js # Core application logic
├── index.html # Main application file
├── README.md # Project documentation
└── Screenshot.png # Application preview
Contributions are welcome! To contribute:
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
- Follow existing code style and structure
- Test on multiple browsers and devices
- Update documentation for new features
- Ensure mobile responsiveness
Browser | Support | Notes |
---|---|---|
Chrome | ✅ Full | Best performance and voice selection |
Edge | ✅ Full | Excellent compatibility |
Firefox | ✅ Full | Good performance |
Safari | Basic functionality, fewer voices | |
Mobile Browsers | ✅ Good | Responsive design optimized |
This project is licensed under the MIT License. See the LICENSE file for details.
- Web Speech API - Core text-to-speech functionality
- Bootstrap - Responsive UI framework
- SweetAlert2 - Beautiful alert dialogs
- Font Awesome - Icon library
- jQuery - JavaScript library
Created by jmrashed - Feel free to reach out for questions or suggestions!
⭐ Star this repository if you found it helpful!