A lightweight Ubuntu desktop application that announces the time at configurable intervals in English and বাংলা (Bangla).
- 🕐 Time Announcements — Hear the time spoken aloud at 15, 30, or 60-minute intervals
- 🌍 Bilingual Support — English and বাংলা (Bangla) with native pronunciation
- 🔇 Quick Mute — Toggle announcements from the system tray
- ⚡ Lightweight — Event-driven design uses virtually zero CPU when idle
- 🖥️ System Tray — Runs quietly in your Ubuntu top panel
- 🎙️ High-Quality Voices — Generated with ElevenLabs AI
sudo apt install python3-gi gir1.2-gtk-3.0 gir1.2-gstreamer-1.0 \
gir1.2-ayatanaappindicator3-0.1 gstreamer1.0-plugins-good libnotify-binpip install -r requirements.txtpython3 src/main.pyThe app starts in the system tray. Click the tray icon to access:
- ⚙️ Settings — Configure language and interval
- 🔇 Mute — Toggle announcements on/off
- ❌ Quit — Exit the application
To start VoiceClock automatically on login:
cp voiceclock.desktop ~/.config/autostart/The project includes 192 pre-generated MP3 files:
- 96 English files — Natural speech ("It is two fifteen in the afternoon")
- 96 Bangla files — Native pronunciation with time-of-day context (সকাল, দুপুর, বিকেল, সন্ধ্যা, রাত)
If you want to generate your own audio files:
- Get an API key from ElevenLabs
- Create
.envfile:ELEVENLABS_API_KEY=your_key_here - Run:
python3 scripts/generate_audio.py
schedule-voice-clock/
├── assets/audio/ # Audio files (en/, bn/)
├── data/ # User settings (settings.json)
├── scripts/ # Utility scripts
│ ├── generate_audio.py # ElevenLabs audio generator
│ └── file_namer.py # Filename checklist generator
├── src/
│ ├── main.py # Entry point
│ ├── config.py # Settings management
│ ├── player.py # GStreamer audio playback
│ ├── scheduler.py # Time checking logic
│ ├── tray.py # System tray icon
│ └── settings_window.py # GTK settings dialog
└── voiceclock.desktop # Desktop integration
This project is open source and contributions are welcome!
- 🐛 Report Bugs — Open an issue if something doesn't work
- 💡 Suggest Features — Have an idea? Let us know!
- 🌍 Add Languages — Help translate to other languages
- 🎙️ Improve Voices — Contribute better audio recordings
- 📖 Documentation — Help improve the docs
- 🔧 Code — Submit pull requests
git clone https://github.com/varabit/schedule-voice-clock.git
cd schedule-voice-clock
pip install -r requirements.txt
python3 src/main.pyThis project is licensed under the MIT License — see the LICENSE file for details.
You are free to:
- ✅ Use commercially
- ✅ Modify
- ✅ Distribute
- ✅ Use privately
Hridoy Varaby
- 🌐 Website: varabit.com
- 💼 GitHub: @varabit
- ElevenLabs — AI voice generation
- PyGObject — Python GTK bindings
- GStreamer — Multimedia framework
Made with ❤️ in Bangladesh 🇧🇩