Skip to content
Oeiuwq Faith Blog OpenSource Porfolio

cv/t

Quick and dirty world clock for the command-line

cv/t.json
{
"createdAt": "2017-10-17T23:00:13Z",
"defaultBranch": "main",
"description": "Quick and dirty world clock for the command-line",
"fullName": "cv/t",
"homepage": null,
"language": "Go",
"name": "t",
"pushedAt": "2025-12-29T03:24:09Z",
"stargazersCount": 32,
"topics": [],
"updatedAt": "2026-01-07T02:59:41Z",
"url": "https://github.com/cv/t"
}

CI

A quick and simple world clock for the command-line using IATA airport codes.

Terminal window
brew install cv/tap/t
Terminal window
go install github.com/cv/t/cmd/t@latest

Download the latest binary from the releases page.

Terminal window
$ t sfo jfk
SFO: 🕓 16:06:21 (America/Los_Angeles)
JFK: 🕖 19:06:21 (America/New_York)

Any IATA airport code can be used, and will pick the timezone of that airport.

Terminal window
$ t --version
t v1.0.0 (commit: abc1234, built: 2024-01-01T00:00:00Z)

If PS1_FORMAT is set, the output will be compact with no decorations or newline, suitable for shell prompts:

Terminal window
$ echo $(PS1_FORMAT=1 t sfo lon)
SFO 17:47 LON 01:47
  • Go 1.21 or later
Terminal window
go build -o t ./cmd/t
Terminal window
# Run all tests
make test
# Run with coverage
make test-cover
# Run with race detector
make test-race
Terminal window
make lint

Releases are automated via GitHub Actions. To create a new release:

Terminal window
git tag v1.0.0
git push origin v1.0.0
t/
├── .github/workflows/ # CI and release automation
│ ├── ci.yml
│ └── release.yml
├── cmd/t/ # Main application entry point
│ └── main.go
├── codes/ # IATA airport code to timezone mapping
│ └── iata.go
├── internal/clock/ # Core clock display logic
│ ├── clock.go
│ └── clock_test.go
├── .goreleaser.yml # Release configuration
├── go.mod
├── go.sum
└── README.md

MIT License - see [LICENSE]!(LICENSE) for details.