A beautiful terminal-based time and project tracker designed specifically for Android Termux. Track your productivity with style!
- 📁 Project Management: Create, edit, and delete projects
▶️ Timer Control: Start and stop timers with live updates- 📊 Time Tracking: View all your time entries in beautiful tables
- 📈 Statistics: See your productivity stats and project breakdowns
- 🎨 Beautiful UI: Modern terminal interface with colors and emojis
- 💾 SQLite Database: Persistent data storage
- 📱 Termux Optimized: Designed specifically for Android Termux
Make sure you have Python 3.7+ installed in Termux:
pkg update && pkg upgrade
pkg install python python-pip-
Clone or download the project:
git clone <repository-url> cd TimeTrakk
-
Install dependencies:
pip install rich==13.7.0
-
Make the script executable:
chmod +x timetrakk.py
Recommended: F-Droid (Best option)
- Download F-Droid from f-droid.org
- Install F-Droid on your Android device
- Open F-Droid and search for "Termux"
- Install Termux from the official repository
Alternative: Google Play Store
- Open Google Play Store
- Search for "Termux"
- Install the official Termux app
- Note: Play Store version may be outdated
- Open Termux on your Android device
- Grant permissions when prompted
- Update packages:
pkg update && pkg upgrade
# Install Python and pip
pkg install python python-pip
# Install additional useful packages
pkg install git nano
# Verify installation
python --version
pip --version# Enable storage access (for file sharing)
termux-setup-storage
# Install additional Termux addons
pkg install termux-api# Navigate to your home directory
cd ~
# Create TimeTrakk directory
mkdir TimeTrakk
cd TimeTrakk
# Copy all TimeTrakk files to this directory
# (via USB, cloud storage, or email)
# Install Rich library
pip install rich==13.7.0
# Make executable
chmod +x timetrakk.py# Create shortcuts directory
mkdir -p ~/.shortcuts
# Create simple launcher
echo '#!/bin/bash
cd ~/TimeTrakk
python timetrakk.py' > ~/.shortcuts/timetrakk
# Create notification launcher
echo '#!/bin/bash
termux-notification --title "⏱️ TimeTrakk" --content "Launching..." --icon "timer"
sleep 0.5
cd ~/TimeTrakk
python timetrakk.py' > ~/.shortcuts/timetrakk-notify
# Make both executable
chmod +x ~/.shortcuts/timetrakk
chmod +x ~/.shortcuts/timetrakk-notify- Long press on your Android home screen
- Select "Widgets"
- Find "Termux Widget" and add it
- Tap the widget and select your shortcut:
timetrakk(simple launch)timetrakk-notify(with notification)
cd ~/TimeTrakk
python timetrakk.py~/timetrakkpython timetrakk_simple.py-
📁 Manage Projects
- Create new projects with names and descriptions
- Edit existing project details
- Delete projects (and their time entries)
-
▶️ Start Timer- Select a project to track time for
- Live timer display with real-time updates
- Press
Ctrl+Cto stop the timer
-
⏹️ Stop Timer
- Stop the currently running timer
- Add optional notes to the time entry
- Automatically saves the entry to database
-
📊 View Time Entries
- See all your time entries in a beautiful table
- Shows date, project, start/end times, duration, and notes
-
📈 Statistics
- View total time tracked
- See breakdown by project
- Track your productivity patterns
-
❌ Exit
- Safely exit the application
- Prompts to stop timer if one is running
-
Font Size: Adjust Termux font size for better readability:
- Go to Termux Settings → Appearance → Font Size
- Recommended: 14-16pt
-
Color Scheme: Use a dark theme for better contrast:
- Go to Termux Settings → Appearance → Color Scheme
- Recommended: "Dracula" or "Monokai"
-
Keyboard Shortcuts:
Ctrl+C: Stop timerCtrl+D: Exit (alternative)- Arrow keys: Navigate menus
- Database:
timetrakk.db(created in app directory) - Logs: Check Termux logs if issues occur
- Rich: Beautiful terminal formatting and UI components
- SQLite3: Database storage (built-in with Python)
- Datetime: Time handling and calculations
Projects Table:
id: Unique identifiername: Project name (unique)description: Optional project descriptioncreated_at: Timestamp of creationcolor: Project color (for future use)
Time Entries Table:
id: Unique identifierproject_id: Reference to projectstart_time: Timer start timestampend_time: Timer end timestampduration: Duration in secondsnotes: Optional notes for the entry
The app uses Rich library for styling. You can customize colors by modifying the style attributes in the code:
bold magenta: Main headersbold cyan: Section headersbold green: Success messagesbold red: Error messagesyellow: Timestamps and warningswhite: Regular text
The modular design makes it easy to add new features:
- Add new menu options in
show_main_menu() - Create corresponding methods for functionality
- Update the main loop in
run()
-
Import Errors:
pip install --upgrade rich
-
Database Issues:
rm timetrakk.db # Reset database (WARNING: loses all data) -
Display Issues:
- Check Termux font settings
- Ensure terminal supports Unicode characters
- Try different color schemes
-
Widget Issues:
# Recreate shortcuts directory mkdir -p ~/.shortcuts chmod +x ~/.shortcuts/timetrakk
If you encounter issues:
- Check that all dependencies are installed
- Verify Python version (3.7+)
- Check Termux permissions
- Review the error messages
This project is open source. Feel free to modify and distribute.
Contributions are welcome! Some ideas:
- Add export functionality (CSV, JSON)
- Implement project categories/tags
- Add time goals and reminders
- Create backup/restore features
- Add data visualization charts
Happy Time Tracking! ⏱️✨