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.3.tar.gz (8.7 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.3-py3-none-any.whl (20.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: world_wall_clock-0.1.3.tar.gz
  • Upload date:
  • Size: 8.7 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.3.tar.gz
Algorithm Hash digest
SHA256 b8347436bc59432595ecb8f2912f302bf20486c549c7c2ed5428de308872424c
MD5 8e65b2c6238b1d891345bf03abbdee07
BLAKE2b-256 a4bb4c23cba69c83a631fb4b9d9ce51cf1911d69427937aa5a0b143b5e02e737

See more details on using hashes here.

File details

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

File metadata

  • Download URL: world_wall_clock-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 20.9 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 9b73ec17c0e66832e1fd4cd9d92b9dd928447160963315b13f60e963af09c7f6
MD5 20c6966353d8bbfc759b1a1492bf3898
BLAKE2b-256 cc8d800a424462e0da38ce96baaaa3eb13c3456414b4fbad0a0d06795d0a4d95

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