π Live at time.miglen.com
A fully static, JavaScript-based time-zone scheduler. No build step, no
backend β just open index.html (served over HTTP so the JSON files can be
fetched).
This project was built on the shoulders of two excellent prior works:
- vladkens/timewiz β the original TimeWiz (TypeScript / React / Vite) whose UI design and city dataset inspired this static port.
- commenthol/date-holidays β the per-country YAML public-holiday dataset that powers the holiday highlighting and the holiday browser.
- 5,500+ cities with timezone, country and offset metadata
- Add cities or raw timezones (IANA paths like
Europe/Sofia, or abbreviations likeEET,EEST,PST,JST) as rows - Multi-tab layout (rename, delete, share)
- Multiple home zones, drag-to-reorder rows, set Home with one click
- Hour grid centered on now (web: -12hβ¦+12h, mobile: -6hβ¦+12h)
- Weekend / sleep / twilight / work color zones, "now" column overlay, hover column overlay, click-drag column selection
- Date pills (3 back / 7 ahead) plus a free-form date picker for jumping further in time
- Public-holiday highlighting (red weekend palette) for any country with
data in
holidays.json - Holiday browser modal β pick a country & year, filter by type
(
public / school / observance / bank / optional), copy a shareable URL - Event preview modal with one-click export to:
- Copy text
- Email (mailto)
- Gmail (compose URL)
- Google Calendar (deep link)
- Outlook / iCal (
.icsdownload) - Share link (encodes tab + selection in the URL)
- Dark / light theme, fully responsive layout
- All state persisted in
localStorage; sharing via URL hash & query
index.htmlβ the entire app (HTML + CSS + JS, single file)cities.jsonβ geonames-derived city dataset (sourced from vladkens/timewiz)holidays.jsonβ per-country public-holiday rules (generated from commenthol/date-holidays)
python3 -m http.server 8765
# then open http://localhost:8765/A converter script reads the upstream YAML files and emits
holidays.json in the rule shape this app understands.
python3 ../convert_holidays.pyThe converter handles fixed dates, Western Easter offsets, Orthodox Easter offsets, "Nth weekday in month" and "weekday before/after a date". Lunar-calendar holidays (Hebrew, Islamic, Chinese, Hindu) and complex compound rules are skipped.
- UI design and city dataset Β© original TimeWiz authors (MIT)
- Public-holiday rules Β© date-holidays contributors (CC-BY-SA-3)