A super-simple GitHub Actions tool that instantly converts your meeting time into major cities worldwide β perfect for scheduling international calls without doing time-zone math!
No installation Β· No dependencies Β· Just click and run.
Just go to the Actions tab and run it: β https://github.com/kangwonlee/timezone-table/actions/workflows/meeting-time.yml
-
Click on the Actions tab
-
In the left sidebar, select Meeting Time Converter
-
Click the blue button Run workflow (top-right)
-
Fill in the form:
- Year β e.g.
2026(leave empty for current year) - Month β
1to12(leave empty for current month) - Day β
1to31(leave empty for today) - Hour β
0β23(24-hour format) - Minute β
0β59 - Timezone β IANA name of the original time (default:
Europe/Paris) Common examples:Europe/Paris,Europe/London,America/New_York,America/Los_Angeles,Asia/Tokyo,Asia/Dubai, etc. - Duration β meeting length in minutes (default:
60) - Generate 24-hour XLSX β
trueorfalse(default:false) to generate an optional 24-hour timezone table in Excel format
- Year β e.g.
-
Click the green Run workflow button (may take about 15 seconds)
The result appears immediately in the workflow run summary as a beautiful Markdown table:
Original time: 2026εΉ΄01ζ15ζ₯ 14:00 CET (Europe/Paris) Duration: 60 minutes
| City | Local Time | Time Zone |
|---|---|---|
| San Diego | 05:00 β 06:00 | PST |
| Phoenix | 06:00 β 07:00 | MST |
| Chicago | 07:00 β 08:00 | CST |
| New York | 08:00 β 09:00 | EST |
| London | 13:00 β 14:00 | GMT |
| Paris | 14:00 β 15:00 | CET |
| Singapore | 21:00 β 22:00 | +08 |
| Sydney | 00:00 β 01:00 | AEDT |
You can copy-paste the table directly into Slack, Notion, emails, etc.
If you enable generate_xlsx: true, the workflow generates an Excel file showing the full 24-hour day in the original timezone, converted to each city's local time.
- Colors: Green for typical working hours (9:00β17:00 local), gray for sleep hours (22:00β7:00 local).
- Download: After the workflow completes, go to the run page, scroll to the "Artifacts" section at the bottom, and download
24hour_timezones_{day}.
This is great for visualizing availability across timezones for the entire day.
- Cities: The tool uses the list from
cities.json. Fork the repo and edit this file to add/remove cities (format:{"city": "City Name", "timezone": "IANA/Timezone"}). - Sorting: By default, cities are in the order listed. To sort west-to-east (by UTC offset), edit the workflow YAML to add
--sort-by-offsetto theuv runcommand. - More Options: See
timezone_table.pyfor additional features like handling ambiguous DST times.
Versions before v0.2.0 have incorrect DST/summer-time handling. Duration arithmetic used wall-clock time instead of real elapsed time, producing wrong meeting end times across spring-forward and fall-back boundaries. The 24-hour XLSX table also generated phantom rows for non-existent gap times. Please use v0.2.0 or later.
- Python + built-in
zoneinfo - Powered by uv β fast Python dependency management
- Pure GitHub Actions β zero setup
Just fork, star, or reuse in your own team/org repo!
Made with β€οΈ for distributed teams.
(Got help from Grok 4 by xAI)