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.

From PyPI

python -m pip install world-wall-clock

From the top level of the source repo

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, code formatting, and linting:

poetry run mypy --strict
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.2.tar.gz (8.2 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.2-py3-none-any.whl (20.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: world_wall_clock-0.1.2.tar.gz
  • Upload date:
  • Size: 8.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.10.12 Linux/6.1.53

File hashes

Hashes for world_wall_clock-0.1.2.tar.gz
Algorithm Hash digest
SHA256 3d2d6fef6637c5dd8d253f93b16c7402eb2ed91f5b4a5947c644e21d70d4e479
MD5 1ac253603083e1bf0179f9a5471267f6
BLAKE2b-256 b61744f52ea6d5a83353ee27644850ad44462e7ae8289068855997bff5645d05

See more details on using hashes here.

File details

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

File metadata

  • Download URL: world_wall_clock-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 20.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.2 CPython/3.10.12 Linux/6.1.53

File hashes

Hashes for world_wall_clock-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2fb5bc30385c4d12a8267988621d2b739065f3053ba8954c59d2ba636e568b1c
MD5 e24aa8515bd95f960d996b3246b88ea2
BLAKE2b-256 913e462579717e7493b6aaee5d1ba45fe751631afe6dd7853bc39c6488556f2a

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