Skip to content

JamesDimonaco/timezone-map

Repository files navigation

Time Map

An interactive world timezone map built with Next.js. Explore 60+ cities across every major timezone with a full-screen, color-coded map -- no API keys required.

Time Map Screenshot


Features

  • Full-screen interactive map powered by MapLibre GL with free CARTO basemap tiles
  • 60+ city markers spanning all major timezones, color-coded by UTC offset
  • Country timezone shading -- countries are filled by their actual timezone, reflecting real-world boundaries rather than straight vertical lines
  • Timezone boundary lines drawn as dashed overlays across the map
  • Click any marker to view a popup with live local time, date, UTC offset, and a comparison to your local time
  • Hover a country to highlight every country sharing that same timezone
  • City search bar for quick lookup
  • Timezone time labels pinned to the bottom of the screen, positioned between boundary lines
  • Geolocation with a pulsing blue dot showing your current position
  • Toggle city markers on or off for a cleaner view
  • Dark / light theme that follows your system preference automatically
  • Map controls for zoom, locate-me, and fullscreen

Getting Started

Prerequisites

  • Node.js 18+

Install

git clone <repo-url>
cd time-map
npm install

Run

npm run dev

Open http://localhost:3000 to view the app.

Build for Production

npm run build
npm start

Tech Stack

Layer Technology
Framework Next.js 16
Language TypeScript
Styling Tailwind CSS v4
UI Components shadcn/ui
Map MapLibre GL via mapcn
Basemap Tiles CARTO (free, no API key)
Country Boundaries TopoJSON (world-110m)
Icons Lucide React

License

MIT

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors