See the current time across cities worldwide, then instantly find the best overlapping hours to meet across time zones. Accurate (DST-aware via the browser's built-in timezone data), private, and 100% in your browser.
Coordinating across time zones is one of the quiet daily frictions of remote and global work:
"Is 3pm my time a reasonable hour for my teammate in Tokyo?" WorldClock answers that at a
glance. Add the cities you care about to see live clocks, set everyone's working hours, and the
meeting planner highlights the windows when everyone is awake and working β no math, no
spreadsheets. It uses the browser's built-in IANA timezone database (via the Intl API), so
results are accurate and DST-aware with zero external data and zero network calls.
- π Live world clocks β add cities and watch their current time, date, day/night, and UTC offset update in real time
- ποΈ Meeting planner β a 24-hour grid that highlights the hours when all your cities are within working hours
- π’ Best meeting windows β automatically lists the overlapping time ranges in your reference city
- π Pin any hour to see the exact local time & date in every city at that instant
- β Reference city β set any city as the planner's anchor
- βοΈ Adjustable working hours, 12/24-hour format
- π ~65 major cities across every region, searchable by city or country (with flag emoji)
- π Dark/light mode; your cities & settings persist locally
- π 100% client-side β accurate IANA/DST time math via
Intl, no servers, no tracking, works offline - π§© Zero dependencies, zero build step
Static site β no build, no install.
git clone https://github.com/aashishbharti04/worldclock
cd worldclock
python -m http.server 8000 # or: npx serve .
# open http://localhost:8000Or just open the live demo.
- Search for a city and click to add it (it seeds with your local zone + a few hubs).
- Click β on a card to make it the planner's reference city.
- Set everyone's working hours; the planner highlights columns where all cities overlap.
- Read the Best meeting windows card, or click a column to pin a time and see it in every city.
- Toggle 12-hour format or Reset to now anytime.
No configuration or secrets. Your selected cities, reference, working hours, and format are
saved to localStorage.
Auto-deploys to GitHub Pages via .github/workflows/pages.yml
(Settings β Pages β Source: GitHub Actions). Fully static, so it also runs on Netlify,
Vercel, Cloudflare Pages, or any web server. See docs/DEPLOYMENT.md.
worldclock/
βββ index.html # app shell (hero, search, clocks, planner)
βββ assets/
β βββ css/style.css # design system, clocks grid, planner grid, responsive
β βββ js/
β βββ cities.js # curated city β IANA timezone dataset (+ flag emoji)
β βββ tz.js # timezone math via Intl (offsets, zoned parts, formatting)
β βββ app.js # state, live clocks, planner overlap logic, search, theme
βββ docs/ # architecture, deployment, screenshot
βββ .github/ # workflows + issue/PR templates
How is the time accurate without a backend? It uses Intl.DateTimeFormat with IANA time
zones β the same timezone database your OS/browser ships β so offsets and DST are correct.
Does it track me or upload anything? No. Everything runs locally; there are no network calls except loading the UI web font.
Why isn't my exact city listed? The list covers major cities per zone. Any city in the same IANA zone shows the same time β pick the nearest hub. PRs to add cities are welcome!
Does it handle Daylight Saving Time? Yes β DST transitions come from the browser's timezone database automatically.
PRs welcome β adding cities is a one-line change! See CONTRIBUTING.md and the Code of Conduct. Security reports: SECURITY.md.
MIT Β© Aashish Bharti β free for educational, learning, and community use.
Email: aashish@marketdoctorsonline.com
LinkedIn Β· GitHub Β· YouTube Β· Instagram
Β© WorldClock. All rights reserved. Β· This project is open source and available for educational, learning, and community contributions.