Skip to main content

Global Time Utility (gtime) - A modern, colorful Python CLI utility for global time zone lookup, comparison, and management. It supports fuzzy search, favorites, city comparison, meeting time conversion, and a live/watch mode

Project description

๐ŸŒ Global Time Utility (gtime)

PyPI version Python Support License: MIT

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.

โญ Love this project? Give it a star!

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


๐ŸŽฏ Why gtime?

  • โšก 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

๐Ÿ“ฆ Installation

With uv (recommended)

uv tool install gtime

In a virtual environment

uv venv .venv
source .venv/bin/activate
pip install gtime

From source

git clone https://github.com/savitojs/gtime.git
cd gtime
uv sync
uv run gtime --help

๐Ÿš€ Quick Start

# 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 watch

๐ŸŽฌ Demo

See gtime in action:

demo

Note: Some command output may appear broken in the demo, but it works perfectly in real terminal usage

๐ŸŽฏ Features

๐Ÿ™๏ธ City Lookup

  • Fuzzy search: gtime toky finds Tokyo
  • Suggestions: Get helpful suggestions for misspelled cities
  • Instant results: Lightning-fast lookups even with huge databases

โญ Favorites Management

gtime add "Los Angeles" Berlin Mumbai    # Add multiple cities
gtime remove Tokyo                       # Remove a city
gtime                                   # View all favorites

๐Ÿ” Multi-City Comparison

gtime compare London Tokyo "New York"   # Compare specific cities
gtime                                   # Show all favorites (sorted by UTC offset)

๐Ÿ“… Meeting Time Conversion

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)"

๐Ÿ‘€ Live Watch Mode

gtime watch                             # Monitor all favorites (live updates every 60s)
gtime compare London Tokyo --watch      # Watch specific cities

๐ŸŒ Timezone Support

When 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)"

๐Ÿ“š Usage Examples

Basic Usage

# Simple city lookup
gtime Paris
gtime "San Francisco"
gtime mumbai                    # Case insensitive

# With fuzzy matching
gtime pairs                     # Finds Paris
gtime newyork                   # Finds New York

Managing Favorites

# 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

Advanced Features

# 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 second

๐Ÿ› ๏ธ Development

Using uv (recommended)

uv venv .venv
source .venv/bin/activate
uv sync

# Optional: update lockfile
uv lock

# Run tests
pytest tests/

Running Tests

pytest tests/

Contributing

We welcome contributions! Here's how to get started:

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/amazing-feature
  3. Make your changes and add tests
  4. Run tests: pytest
  5. Commit your changes: git commit -m 'Add amazing feature'
  6. Push to the branch: git push origin feature/amazing-feature
  7. Open a Pull Request

๐Ÿš€ GitHub Actions

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

๐Ÿค Support

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.


๐ŸŒŸ Show Your Support

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! ๐ŸŒ

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gtime-0.6.0.tar.gz (32.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gtime-0.6.0-py3-none-any.whl (25.1 kB view details)

Uploaded Python 3

File details

Details for the file gtime-0.6.0.tar.gz.

File metadata

  • Download URL: gtime-0.6.0.tar.gz
  • Upload date:
  • Size: 32.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for gtime-0.6.0.tar.gz
Algorithm Hash digest
SHA256 e3154509cc81e1ee6b6647703acb78ff9e355a6ce336129fbc42d63d2eb35135
MD5 ea3b4b1edc6550dcfb6ea6e1e8e96bf4
BLAKE2b-256 116650b0a0a27129bdc9bcfed21b057fd2151df4a1e84fb0b9ab6a4b4ebec3a2

See more details on using hashes here.

Provenance

The following attestation bundles were made for gtime-0.6.0.tar.gz:

Publisher: test.yml on savitojs/gtime

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file gtime-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: gtime-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 25.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for gtime-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 498a66430aecc65a42df9d7a91c80b2a43525153b9c1e543599bac1b771c60da
MD5 3bb95dbc9b2a64f0ba587dbafef06a68
BLAKE2b-256 6e0d471a2af2fca555d04897054be4a5b96e5c5da2667dcee5fffc6f5d4f47a6

See more details on using hashes here.

Provenance

The following attestation bundles were made for gtime-0.6.0-py3-none-any.whl:

Publisher: test.yml on savitojs/gtime

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page