gtime


Namegtime JSON
Version 0.3.3 PyPI version JSON
download
home_pageNone
SummaryGlobal 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
upload_time2025-07-12 03:23:22
maintainerNone
docs_urlNone
authorNone
requires_python>=3.7
licenseMIT
keywords time timezone cli utility global world clock
VCS
bugtrack_url
requirements rich python-dateutil thefuzz pytest pytz
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # ๐ŸŒ Global Time Utility (gtime)

[![PyPI version](https://badge.fury.io/py/gtime.svg)](https://badge.fury.io/py/gtime)
[![Python Support](https://img.shields.io/pypi/pyversions/gtime.svg)](https://pypi.org/project/gtime/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/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**](https://github.com/savitojs/gtime) โ€ข [๐Ÿ› Report issues](https://github.com/savitojs/gtime/issues) โ€ข [๐Ÿ’ก Request features](https://github.com/savitojs/gtime/issues)

---

## ๐ŸŽฏ 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

### From PyPI (Recommended)
```bash
pip install gtime
```

### From Source
```bash
git clone https://github.com/savitojs/gtime.git
cd gtime
pip install .
```

## ๐Ÿš€ Quick Start

```bash
# 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 list

# 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](./assets/demo.gif)

*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
```bash
gtime add "Los Angeles" Berlin Mumbai    # Add multiple cities
gtime remove Tokyo                       # Remove a city
gtime list                              # View all favorites
gtime clear                             # Clear all favorites
```

### ๐Ÿ” Multi-City Comparison
```bash
gtime compare London Tokyo "New York"   # Compare specific cities
gtime compare                           # Compare all favorites
```

### ๐Ÿ“… Meeting Time Conversion
```bash
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
```bash
gtime watch                             # Monitor all favorites
gtime watch London Tokyo                # Watch specific cities
```

### ๐ŸŒ Timezone Support
When you specify a timezone, gtime shows the full timezone name for clarity:
```bash
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
```bash
# 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
```bash
# Build your favorite cities list
gtime add London Tokyo "San Francisco" Berlin
gtime add Mumbai                # Add one more
gtime list                      # See your collection

# Remove cities you no longer need
gtime remove Berlin
gtime clear                     # Start fresh
```

### Advanced Features
```bash
# 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

### Running Tests
```bash
# Install development dependencies
pip install -r requirements.txt

# Run tests
pytest tests/

# Run performance tests
python tests/perf/profile_lookup.py
```

### 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.8-3.12
- **๐Ÿ“ฆ Publish**: Automatically publishes to PyPI upon new GitHub release

## ๐ŸŽจ Screenshots

*Coming soon - we're working on adding more visual examples!*

## ๐Ÿค Support

- ๐Ÿ“– **Documentation**: Check out our [Wiki](https://github.com/savitojs/gtime/wiki)
- ๐Ÿ› **Bug Reports**: [Create an issue](https://github.com/savitojs/gtime/issues)
- ๐Ÿ’ก **Feature Requests**: [Suggest new features](https://github.com/savitojs/gtime/issues)
- ๐Ÿ’ฌ **Discussions**: [Join the conversation](https://github.com/savitojs/gtime/discussions)

## ๐Ÿ“„ License

This project is licensed under the MIT License - see the [LICENSE](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! ๐ŸŒ*

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "gtime",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": null,
    "keywords": "time, timezone, cli, utility, global, world, clock",
    "author": null,
    "author_email": "Savitoj Singh <savv@duck.com>",
    "download_url": "https://files.pythonhosted.org/packages/df/8c/33ea96fc274f8127c16c3a02484fbdf6b4d029145bde61e0d392492b6b08/gtime-0.3.3.tar.gz",
    "platform": null,
    "description": "# \ud83c\udf0d Global Time Utility (gtime)\n\n[![PyPI version](https://badge.fury.io/py/gtime.svg)](https://badge.fury.io/py/gtime)\n[![Python Support](https://img.shields.io/pypi/pyversions/gtime.svg)](https://pypi.org/project/gtime/)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n> **A modern, colorful Python CLI utility for global time zone lookup, comparison, and management**\n\nSick of Googling time zones every day?! Stop wasting time figuring out the time. \ud83d\udd50 gtime makes it effortless to work across time zones with fuzzy search, favorites, real-time updates, and beautiful terminal output.\n\n## \u2b50 **Love this project? Give it a star!**\n\nIf gtime helps you manage time zones more efficiently, please consider giving it a \u2b50 on GitHub! Your support helps us improve and motivates continued development.\n\n[\u2b50 **Star this project**](https://github.com/savitojs/gtime) \u2022 [\ud83d\udc1b Report issues](https://github.com/savitojs/gtime/issues) \u2022 [\ud83d\udca1 Request features](https://github.com/savitojs/gtime/issues)\n\n---\n\n## \ud83c\udfaf Why gtime?\n\n- **\u26a1 Lightning fast** - Optimized for large city databases\n- **\ud83d\udd0d Smart search** - Fuzzy matching finds cities even with typos\n- **\u2764\ufe0f Favorites** - Save your most-used cities for quick access\n- **\ud83d\udd04 Live updates** - Watch mode for real-time monitoring\n- **\ud83c\udfa8 Beautiful output** - Colorful, rich terminal interface\n- **\ud83e\udd1d Meeting helper** - Convert meeting times across all favorites with timezone support\n- **\ud83c\udf10 Global team ready** - Supports UTC, EST, PST, JST, CET and more timezones\n- **\ud83d\udcca Compare easily** - Side-by-side time comparisons\n\n## \ud83d\udce6 Installation\n\n### From PyPI (Recommended)\n```bash\npip install gtime\n```\n\n### From Source\n```bash\ngit clone https://github.com/savitojs/gtime.git\ncd gtime\npip install .\n```\n\n## \ud83d\ude80 Quick Start\n\n```bash\n# Get the time in any city\ngtime London\n\n# Add cities to your favorites\ngtime add Tokyo Singapore \"New York\"\n\n# See all your favorite cities at once\ngtime list\n\n# Compare times across multiple cities\ngtime compare London Tokyo Sydney\n\n# Find the perfect meeting time\ngtime meeting at \"2:00 PM\"\n\n# Live monitoring mode\ngtime watch\n```\n\n## \ud83c\udfac Demo\n\n**See gtime in action:**\n\n![demo](./assets/demo.gif)\n\n*Note: Some command output may appear broken in the demo, but it works perfectly in real terminal usage*\n\n## \ud83c\udfaf Features\n\n### \ud83c\udfd9\ufe0f City Lookup\n- **Fuzzy search**: `gtime toky` finds Tokyo\n- **Suggestions**: Get helpful suggestions for misspelled cities\n- **Instant results**: Lightning-fast lookups even with huge databases\n\n### \u2b50 Favorites Management\n```bash\ngtime add \"Los Angeles\" Berlin Mumbai    # Add multiple cities\ngtime remove Tokyo                       # Remove a city\ngtime list                              # View all favorites\ngtime clear                             # Clear all favorites\n```\n\n### \ud83d\udd0d Multi-City Comparison\n```bash\ngtime compare London Tokyo \"New York\"   # Compare specific cities\ngtime compare                           # Compare all favorites\n```\n\n### \ud83d\udcc5 Meeting Time Conversion\n```bash\ngtime meeting at \"10:00 AM\"            # Convert across favorites\ngtime meeting at \"15:30\"               # 24-hour format supported\ngtime meeting at \"3 PM UTC\"            # Shows \"Coordinated Universal Time (UTC)\"\ngtime meeting at \"9:00 AM EST\"         # Shows \"Eastern Standard Time (EST)\"\n```\n\n### \ud83d\udc40 Live Watch Mode\n```bash\ngtime watch                             # Monitor all favorites\ngtime watch London Tokyo                # Watch specific cities\n```\n\n### \ud83c\udf10 Timezone Support\nWhen you specify a timezone, gtime shows the full timezone name for clarity:\n```bash\ngtime meeting at \"10:00 AM JST\"         # Shows: \"Japan Standard Time (JST)\"\ngtime meeting at \"3 PM UTC\"             # Shows: \"Coordinated Universal Time (UTC)\"\ngtime meeting at \"2:00 PM EST\"          # Shows: \"Eastern Standard Time (EST)\"\n```\n\n## \ud83d\udcda Usage Examples\n\n### Basic Usage\n```bash\n# Simple city lookup\ngtime Paris\ngtime \"San Francisco\"\ngtime mumbai                    # Case insensitive\n\n# With fuzzy matching\ngtime pairs                     # Finds Paris\ngtime newyork                   # Finds New York\n```\n\n### Managing Favorites\n```bash\n# Build your favorite cities list\ngtime add London Tokyo \"San Francisco\" Berlin\ngtime add Mumbai                # Add one more\ngtime list                      # See your collection\n\n# Remove cities you no longer need\ngtime remove Berlin\ngtime clear                     # Start fresh\n```\n\n### Advanced Features\n```bash\n# Compare multiple cities\ngtime compare London Tokyo Sydney Mumbai\n\n# Perfect for planning meetings\ngtime meeting at \"9:00 AM\"      # What time is 9 AM across favorites?\ngtime meeting at \"14:30\"        # 24-hour format supported\ngtime meeting at \"3 PM UTC\"     # Timezone support for global teams\n\n# Real-time monitoring\ngtime watch                     # Live updates every second\n```\n\n## \ud83d\udee0\ufe0f Development\n\n### Running Tests\n```bash\n# Install development dependencies\npip install -r requirements.txt\n\n# Run tests\npytest tests/\n\n# Run performance tests\npython tests/perf/profile_lookup.py\n```\n\n### Contributing\nWe welcome contributions! Here's how to get started:\n\n1. Fork the repository\n2. Create a feature branch: `git checkout -b feature/amazing-feature`\n3. Make your changes and add tests\n4. Run tests: `pytest`\n5. Commit your changes: `git commit -m 'Add amazing feature'`\n6. Push to the branch: `git push origin feature/amazing-feature`\n7. Open a Pull Request\n\n## \ud83d\ude80 GitHub Actions\n\nThis project includes automated workflows:\n- **\ud83e\uddea Tests**: Runs on every push/PR across Python 3.8-3.12\n- **\ud83d\udce6 Publish**: Automatically publishes to PyPI upon new GitHub release\n\n## \ud83c\udfa8 Screenshots\n\n*Coming soon - we're working on adding more visual examples!*\n\n## \ud83e\udd1d Support\n\n- \ud83d\udcd6 **Documentation**: Check out our [Wiki](https://github.com/savitojs/gtime/wiki)\n- \ud83d\udc1b **Bug Reports**: [Create an issue](https://github.com/savitojs/gtime/issues)\n- \ud83d\udca1 **Feature Requests**: [Suggest new features](https://github.com/savitojs/gtime/issues)\n- \ud83d\udcac **Discussions**: [Join the conversation](https://github.com/savitojs/gtime/discussions)\n\n## \ud83d\udcc4 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n---\n\n## \ud83c\udf1f Show Your Support\n\nIf gtime makes your life easier, please consider:\n- \u2b50 **Starring this repository**\n- \ud83d\udc26 **Sharing it on social media**\n- \ud83d\udcdd **Writing a review**\n- \ud83e\udd1d **Contributing to the project**\n\n**Made with \u2764\ufe0f for developers working across time zones**\n\n---\n\n*Happy time zone management! \ud83c\udf0d*\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "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",
    "version": "0.3.3",
    "project_urls": {
        "Bug Tracker": "https://github.com/savitojs/gtime/issues",
        "Documentation": "https://github.com/savitojs/gtime#readme",
        "Homepage": "https://github.com/savitojs/gtime",
        "Repository": "https://github.com/savitojs/gtime"
    },
    "split_keywords": [
        "time",
        " timezone",
        " cli",
        " utility",
        " global",
        " world",
        " clock"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7132c278526ad3241bd435fcd5c7a25af871e4f713fa1445922d336042e1fde0",
                "md5": "2fa36f5299ed4da33a17c24f6530ed64",
                "sha256": "0a7fb21ac4825e9b27820447af83bcd7401072e83cbbcaa1b3f6ca11c1d1b33b"
            },
            "downloads": -1,
            "filename": "gtime-0.3.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "2fa36f5299ed4da33a17c24f6530ed64",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 18696,
            "upload_time": "2025-07-12T03:23:21",
            "upload_time_iso_8601": "2025-07-12T03:23:21.649897Z",
            "url": "https://files.pythonhosted.org/packages/71/32/c278526ad3241bd435fcd5c7a25af871e4f713fa1445922d336042e1fde0/gtime-0.3.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "df8c33ea96fc274f8127c16c3a02484fbdf6b4d029145bde61e0d392492b6b08",
                "md5": "7d7c1e389dce447208feaa909ae53b36",
                "sha256": "c13f10b918f2da095e2c183ade5c1478ade8e63065f6539df585f7c48114fb4a"
            },
            "downloads": -1,
            "filename": "gtime-0.3.3.tar.gz",
            "has_sig": false,
            "md5_digest": "7d7c1e389dce447208feaa909ae53b36",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 21994,
            "upload_time": "2025-07-12T03:23:22",
            "upload_time_iso_8601": "2025-07-12T03:23:22.613214Z",
            "url": "https://files.pythonhosted.org/packages/df/8c/33ea96fc274f8127c16c3a02484fbdf6b4d029145bde61e0d392492b6b08/gtime-0.3.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-12 03:23:22",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "savitojs",
    "github_project": "gtime",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "rich",
            "specs": []
        },
        {
            "name": "python-dateutil",
            "specs": []
        },
        {
            "name": "thefuzz",
            "specs": []
        },
        {
            "name": "pytest",
            "specs": []
        },
        {
            "name": "pytz",
            "specs": []
        }
    ],
    "lcname": "gtime"
}
        
Elapsed time: 0.44170s