Skip to main content

TUI world clock application

Project description

world-wall-clock

world-wall-clock is a TUI application that provides a multi-timezone graphical clock in a terminal environment.

Screeenshot of world-wall-clock

Installing world-wall-clock

You can install world-wall-clock with the Python packaging tool pip. It is recommended to do so in a virtual environment. Alternatively, you can use pipx as a wrapper around pip that will handle setting up a virtual environment for you.

From PyPI, using pipx

pipx install world-wall-clock

From PyPI, using pip in a virtual enviornment

python -m pip install world-wall-clock

From the top level of the source repo, using pip in a virtual environment

python -m pip install .

Running world-wall-clock

In an environment with world-wall-clock installed, start it from the command line with:

wwclock

or

python -m world_wall_clock

Usage

world-wall-clock is a graphical application. By default it shows a live view of one local clock (the system time) and clocks for several time zones scattered around the world. By navigating using arrow keys and selecting or deselecting items from the sidebar of available timezones using the Enter or Space key, you can customize the list of displayed clocks. This is silently stored in the application configuration directory for the next time you launch world-wall-clock.

Using the "Custom time" radio button, you can switch the application into custom time mode. Edit the custom time to display by navigating to the numerical datetime fields next to the custom time button and typing over their current values (these are edited in "replace" rather than "insert" mode). The reference timezone for the custom time can be changed by navigating up or down from the timezone listed at the end of the custom time fields; the list of timezones you can pick from here is populated from the timezones of your displayed clocks.

Dependencies

world-wall-clock is a Python 3 application that relies on urwid as its terminal widget toolkit, xdg-base-dirs to determine where to keep the application configuration, and tzdata to provide backup timezone information if this is not already present on the system.

Development

world-wall-clock uses Poetry to manage builds and dependencies. The Python code is formatted using Black.

With Poetry installed, set up a Poetry environment with all of world-wall-clock's runtime and dev dependencies; from the top level of the source repo, run:

poetry install

Now you can modify the source code and run the application with any changes you've made using the poetry run command:

poetry run wwclock

The poetry run command will also allow you to run the suite of chosen dev tools for static type-checking, import sorting, code formatting, and linting:

poetry run mypy --strict
poetry run isort .
poetry run black .
poetry run flake8

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

world_wall_clock-0.1.5.tar.gz (19.3 kB view details)

Uploaded Source

Built Distribution

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

world_wall_clock-0.1.5-py3-none-any.whl (21.0 kB view details)

Uploaded Python 3

File details

Details for the file world_wall_clock-0.1.5.tar.gz.

File metadata

  • Download URL: world_wall_clock-0.1.5.tar.gz
  • Upload date:
  • Size: 19.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.12.10 Linux/6.15.2-zen1

File hashes

Hashes for world_wall_clock-0.1.5.tar.gz
Algorithm Hash digest
SHA256 481d7ce993ecbee71285396f743aba9544be75310067c487a956d5ad57a9dc3c
MD5 d58552fddc452053ac4bcfa6829ab754
BLAKE2b-256 edea2c35aa8a468aa29ceea45c60473d26b81d4bd76e3718a1190c702288ff59

See more details on using hashes here.

File details

Details for the file world_wall_clock-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: world_wall_clock-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 21.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.3 CPython/3.12.10 Linux/6.15.2-zen1

File hashes

Hashes for world_wall_clock-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 9cd47bc66ad15c5c41333edde9917ce95b7906dbc34a28e58a58a016cc234a57
MD5 0ecb4d2b9f407252e3cbe6931d3921bf
BLAKE2b-256 ae289556b8ef29421fcf726fd42e27442079e8212f6369f9ecb1f220a374ebfc

See more details on using hashes here.

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