Skip to main content

terrahour

tests PyPI license

A world clock for the terminal. It shows a map of the world with day and night on it, and for every city you add, when the people there are at work.

By Alessio Coci. MIT licensed: copy it, change it, keep the notice.

terrahour main view

Install

pipx install terrahour

Then type terrahour. If you don't have pipx, install it first with sudo apt install pipx (Debian, Ubuntu) or brew install pipx (macOS). No Python at all? Download the ready-made file for your system from the releases page instead.

It runs on Linux and macOS. On Windows use WSL.

The first five minutes

It starts with a few example cities. Then:

Press To
a add a city: type its name and press Enter
d remove the selected city
← → move through the day, 15 minutes at a time
r come back to now
? see every key
q quit

Your cities and settings are saved automatically.

What else it can do

demo

Find a meeting time. Each city has a bar showing its working hours. The row at the bottom shows when everybody is at their desk at the same time.

DST radar markets view
See clock changes coming. The DST radar lists the next clock change in every city, and warns you when the gap between you and them is about to shift by an hour. Watch the stock exchanges. Swap the city list for the ten biggest exchanges, with their real trading hours.
ambient view compact view
Put it on a spare monitor. The ambient view is a big clock over the map. Give it a time of day and the map slowly turns, keeping the place where it is that time in the middle. Fit it anywhere. In a small window it shows a compact list; for a status bar there is a one-line mode.

Also: reminders in another city's time, the weather next to each city, a light theme and twelve more, a 12-hour clock, and the mouse.

More

Every key, every command-line option, status bars and scripts, window sizes, other ways to install, and how to update: it's all in the manual.

Want to change the code? See DEVELOPMENT.md.

Credits

  • City list derived from GeoNames (CC BY 4.0).
  • Land mask rasterised from Natural Earth (public domain).
  • Geocoding and weather from Open-Meteo (CC BY 4.0).
  • Time zone rules come from your operating system's tz database through Python's zoneinfo.
  • Several hardening fixes by yourpwnguy.

License

MIT. See LICENSE.

Metadata

Release files for terrahour 1.0.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for terrahour 1.0.8
File Size Uploaded
terrahour-1.0.8.tar.gz 416.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for terrahour 1.0.8
File Interpreter ABI Platform
terrahour-1.0.8-py3-none-any.whl Python 3 none any Details

Total release size: 819.2 kB

Release files / terrahour-1.0.8.tar.gz

Download URL terrahour-1.0.8.tar.gz
Size 416.3 kB
Tags Source
SHA-256 checksum
How to use checksums
24d71358c1bbb6705e73f88f56be4927db8fdf5310b1897952f55d96d7b02784
BLAKE2b-256 checksum
How to use checksums
c22275b35af639086cfd0bfbf88417b123fe72ecac4d7344c7e4fea233341081
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release files / terrahour-1.0.8-py3-none-any.whl

Download URL terrahour-1.0.8-py3-none-any.whl
Size 402.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6e5a669aede42e9f8c99b91774bfe1f01addfea0665d8f4adc87f17ef88c29cf
BLAKE2b-256 checksum
How to use checksums
c783e182f6f231be89c44c1bfecf30f181c9a762e14608a678263493fb1121d7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 16, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.0.8 This release

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page