A modern, colorful Python CLI utility for global time zone lookup, comparison, and management
Sick of Googling time zones every day?! Stop wasting time figuring out the time. ๐ gtime makes it effortless to work across time zones with fuzzy search, favorites, real-time updates, and beautiful terminal output.
If gtime helps you manage time zones more efficiently, please consider giving it a โญ on GitHub! Your support helps us improve and motivates continued development.
โญ Star this project โข ๐ Report issues โข ๐ก Request features
- โก Lightning fast - Optimized for large city databases
- ๐ Smart search - Fuzzy matching finds cities even with typos
- โค๏ธ Favorites - Save your most-used cities for quick access
- ๐ Live updates - Watch mode for real-time monitoring
- ๐จ Beautiful output - Colorful, rich terminal interface
- ๐ค Meeting helper - Convert meeting times across all favorites with timezone support
- ๐ Global team ready - Supports UTC, EST, PST, JST, CET and more timezones
- ๐ Compare easily - Side-by-side time comparisons
uv tool install gtimeuv venv .venv
source .venv/bin/activate
pip install gtimegit clone https://github.com/savitojs/gtime.git
cd gtime
uv sync
uv run gtime --help# Get the time in any city
gtime London
# Add cities to your favorites
gtime add Tokyo Singapore "New York"
# See all your favorite cities at once
gtime
# Compare times across multiple cities
gtime compare London Tokyo Sydney
# Find the perfect meeting time
gtime meeting at "2:00 PM"
# Live monitoring mode
gtime watchSee gtime in action:
Note: Demo recorded in Ghostty. Some command output may appear broken in the GIF, but it works perfectly in real terminal usage. Best experience with Ghostty or Kitty
- Fuzzy search:
gtime tokyfinds Tokyo - Suggestions: Get helpful suggestions for misspelled cities
- Instant results: Lightning-fast lookups even with huge databases
gtime add "Los Angeles" Berlin Mumbai # Add multiple cities
gtime remove Tokyo # Remove a city
gtime # View all favoritesgtime compare London Tokyo "New York" # Compare specific cities
gtime # Show all favorites (sorted by UTC offset)gtime meeting at "10:00 AM" # Convert across favorites
gtime meeting at "15:30" # 24-hour format supported
gtime meeting at "3 PM UTC" # Shows "Coordinated Universal Time (UTC)"
gtime meeting at "9:00 AM EST" # Shows "Eastern Standard Time (EST)"gtime watch # Monitor all favorites (live updates every 60s)
gtime compare London Tokyo --watch # Watch specific citiesWhen you specify a timezone, gtime shows the full timezone name for clarity:
gtime meeting at "10:00 AM JST" # Shows: "Japan Standard Time (JST)"
gtime meeting at "3 PM UTC" # Shows: "Coordinated Universal Time (UTC)"
gtime meeting at "2:00 PM EST" # Shows: "Eastern Standard Time (EST)"# Simple city lookup
gtime Paris
gtime "San Francisco"
gtime mumbai # Case insensitive
# With fuzzy matching
gtime pairs # Finds Paris
gtime newyork # Finds New York# Build your favorite cities list
gtime add London Tokyo "San Francisco" Berlin
gtime add Mumbai # Add one more
gtime # See your collection
# Remove cities you no longer need
gtime remove Berlin# Compare multiple cities
gtime compare London Tokyo Sydney Mumbai
# Perfect for planning meetings
gtime meeting at "9:00 AM" # What time is 9 AM across favorites?
gtime meeting at "14:30" # 24-hour format supported
gtime meeting at "3 PM UTC" # Timezone support for global teams
# Real-time monitoring
gtime watch # Live updates every secondDisplay your favorite cities' times directly on your GNOME desktop using the Desktop Widgets (azclock) extension.
gtime widget # Style A (default) - flags, color-coded time, status
gtime widget a # Same as above
gtime widget b # Grouped by status (Working, Sleeping, etc.)
gtime widget c # Compact cards with hour diff from localStyle A - Flags + color-coded time + status:
๐บ๐ธ New York 23:05 โ Sleeping UTC-4
๐จ๐ฟ Brno 04:05 +1d โ Sleeping UTC+1
๐ฎ๐ณ Delhi 09:35 +1d โ Working UTC+5:30
๐ฆ๐บ Melbourne 14:05 +1d โ Working UTC+11
Style B - Grouped by status:
๐ป Working
๐ฎ๐ณ Delhi 09:35 +1d
๐ฆ๐บ Melbourne 14:05 +1d
๐ค Sleeping
๐บ๐ธ New York 23:05
๐จ๐ฟ Brno 04:05 +1d
Style C - Compact cards:
๐บ๐ธ New York ๐
23:05 โ Sleeping local
๐ฎ๐ณ Delhi ๐
09:35 +1d โ Working +9.5h
- Install the Desktop Widgets GNOME extension
- Open Desktop Widgets settings (right-click any widget -> Settings)
- Add a widget and add a Command Label element
- Set the command to:
gtime widget a(orb/cfor other styles) - Enable Polling with interval
60000(1 minute) - Customize font, colors, and position to your liking
A reference dconf config is included at gtime/widget-azclock-sidebar.dconf with the full sidebar layout (clock + weather + gtime).
# Back up your current config first!
dconf dump /org/gnome/shell/extensions/azclock/ > backup.dconf
# Import the sidebar layout
dconf load /org/gnome/shell/extensions/azclock/ < gtime/widget-azclock-sidebar.dconf- Country flags for every city
- Color-coded time: green = business hours, amber = transitional, blue-grey = sleeping
- Work status indicators: Working, Lunch, Early, Off, Sleeping
- Day difference:
+1d/-1dwhen a city is on a different date - Hour diff from local (Style C): shows
+5h,+9.5h,local
The widget logic lives in gtime/widget.py. You can modify styles, add new ones, or adjust colors by editing the style functions (_style_a, _style_b, _style_c). New styles can be registered in the STYLES dict at the bottom of the file.
uv venv .venv
source .venv/bin/activate
uv sync
# Optional: update lockfile
uv lock
# Run tests
pytest tests/pytest tests/We welcome contributions! Here's how to get started:
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes and add tests
- Run tests:
pytest - 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 includes automated workflows:
- ๐งช Tests: Runs on every push/PR across Python 3.9-3.12
- ๐ฆ Publish: Automatically publishes to PyPI upon new GitHub release
- ๐ Documentation: Check out our Wiki
- ๐ Bug Reports: Create an issue
- ๐ก Feature Requests: Suggest new features
- ๐ฌ Discussions: Join the conversation
This project is licensed under the MIT License - see the LICENSE file for details.
If gtime makes your life easier, please consider:
- โญ Starring this repository
- ๐ฆ Sharing it on social media
- ๐ Writing a review
- ๐ค Contributing to the project
Made with โค๏ธ for developers working across time zones
Happy time zone management! ๐

