A powerful language translation tool built with Streamlit, featuring real-time translation, audio output, and language detection.
- Real-time language detection
- Support for 100+ languages
- Text-to-speech output
- Bulk text translation
- Translation history
- Copy-to-clipboard functionality
- Dark/Light mode support
- Mobile-responsive design
- Python 3.8+
- Streamlit
- googletrans 3.1.0a0
- gTTS (Google Text-to-Speech)
- playsound
- clipboard
- language_detector
# Clone repository
git clone https://github.com/yourusername/advanced-streamlit-translator.git
# Navigate to directory
cd advanced-streamlit-translator
# Install dependencies
pip install -r requirements.txt
# Run application
streamlit run app.py
streamlit==1.24.0
googletrans==3.1.0a0
gTTS==2.3.2
playsound==1.3.0
clipboard==0.0.4
language_detector==1.1.0
- Select source language (or use auto-detect)
- Choose target language
- Enter or paste your text
- Click "Translate" or enable auto-translation
- Use the audio button to hear pronunciation
- Copy translated text with one click
# Language detection
def detect_language(text):
try:
return translator.detect(text).lang
except:
return "en"
# Text translation
def translate_text(text, target_lang):
try:
return translator.translate(text, dest=target_lang).text
except:
return "Translation error. Please try again."
# Text to speech
def text_to_speech(text, lang):
try:
tts = gTTS(text=text, lang=lang)
tts.save("temp.mp3")
return True
except:
return False
- Clean, modern interface
- Language selection dropdowns
- Auto-detection toggle
- Character count display
- Translation history sidebar
- Audio playback controls
- Copy/paste buttons
- Progress indicators
# config.py
STREAMLIT_CONFIG = {
"theme": {
"primaryColor": "#FF4B4B",
"backgroundColor": "#FFFFFF",
"secondaryBackgroundColor": "#F0F2F6",
"textColor": "#262730",
"font": "sans serif",
},
"server": {
"port": 8501,
"address": "localhost"
}
}
- OCR integration for image translation
- API endpoint for programmatic access
- Offline translation support
- Custom voice selection
- Translation memory for frequent phrases
- Batch file translation
- Fork the repository
- Create feature branch
- Commit changes
- Push to branch
- Open pull request
MIT License - See LICENSE for details
- GitHub Issues
- Email: [email protected]