Visual timezone dashboard in your URL
Rethinking Timezone Coordination Through Privacy-First Engineering
The Problem: Timezone Fatigue in Distributed Teams
After years of working with globally distributed teams, I noticed a pattern: everyone hated scheduling meetings. Not because of calendar conflicts, but because of the mental exhaustion from constant timezone math. "Is 2 PM my time too early for them?" "Will this be their dinner time?" "Which day is it even for them?"
Existing solutions failed in different ways:
- World clock apps just showed times without context about work hours
- Scheduling tools required accounts, back-and-forth proposals, and feature bloat
- Manual coordination meant endless "what time works for you?" messages
I wanted to build something that respected both user privacy and user time — a tool that would just work without asking for anything in return.
The Vision: What If There Were No Backend?
The breakthrough came from a simple question: What if the entire application lived in the URL?
Instead of databases, user accounts, and server infrastructure, I could encode everything into URL parameters. Your team setup becomes a shareable link. Bookmark it, send it to colleagues, or keep it private — it's entirely under your control.
This "zero-backend" philosophy meant:
- No data collection (nothing to store = nothing to leak)
- Instant sharing (the URL is the data)
- No infrastructure costs (clients do all the work)
- Perfect privacy (data never leaves the browser)
But URLs have length limits, so I needed compression.
Engineering Deep Dive
URL Compression: 60% Size Reduction
I built a custom encoding system using timezone short codes: ?m=John:NY:9-17,Sarah:LON:9-17
Implementation:
- 50+ timezone short codes (NY, LON, TKY) in both directions
- Backward compatibility: auto-migrates old format URLs
- Efficient encoding without external libraries
Result: Teams of 20+ people fit comfortably in shareable URLs.
The Fairness Algorithm: Beyond Simple Overlap Detection
Finding overlapping hours is easy. Finding fair overlapping hours is hard.
I built a multi-metric scoring system that prevents scenarios where one person always gets terrible meeting times while others are comfortable.
How it works:
- Iterate through 30-minute slots over a 48-hour window
- Calculate comfort weights for each person (0.0 = unavailable, 1.0 = optimal)
- Score each window on three dimensions:
- Average comfort: How good is this time overall?
- Minimum comfort (fairness): Does anyone suffer significantly?
- Time quality: Penalize 5 AM meetings exponentially
- Group consecutive slots into meeting windows
- Sort by balanced quality: Best for everyone, not just the majority
Example scenario:
- Option A: Great for 4 people, terrible for 1 person → Lower score
- Option B: Good for everyone → Higher score
This fairness consideration prevents meeting suggestions that work for most people but force someone to join at 3 AM.
Smart Bulk Import: Handling Messy Real-World Data
Real teams don't have pristine CSV files. They have Excel spreadsheets, Slack copy-pastes, and typos. My parser handles all of it.
Supported formats:
- John Doe, New York, 9-5
- Tokyo
- Justin EDT
- Jane London 9am-5pm [tab-separated]
- Mike|Paris|9-17 [pipe-separated]
Location Resolver: 500+ Cities, Multiple Formats
The messy reality of timezone input requires flexibility:
Supported inputs:
- IANA timezones: America/New_York
- City names: New York, NYC, New York City
- Short codes: NY, LON, TKY, SYD
- Abbreviations: EST, EDT, PST, JST
- Country names: India → Asia/Kolkata
Edge cases handled:
- IST → Asks: India or Ireland?
- Multiple cities per timezone (Seattle = San Francisco = Los Angeles)
- Common typos with suggestions
70+ city mappings and 50+ timezone codes mean users can input data naturally.
Timezone Math Engine: Handling Global Complexity
Timezones are deceptively complex. My calculation engine handles every edge case:
Fractional hour offsets:
- India: UTC+5:30
- Nepal: UTC+5:45
- South Australia: UTC+9:30
DST awareness:
- Live offset calculations (no hardcoded values)
- Date boundary detection (showing when it's a different day)
- Automatic updates when clocks change
Wrap-around schedules:
- Night shifts: 22:00-05:00
- Correct availability calculation across midnight
Performance optimization:
- Timezone offset caching to avoid repeated calculations
- Efficient hour label generation for timelines
- Real-time updates without lag (handles 20+ team members smoothly)
Interactive SVG Timeline: Visualizing Time
The timeline transforms abstract timezone data into intuitive visuals:
Features:
- Synchronized current time markers: Real-time indicators across all timelines
- Color-coded periods
- Responsive vector graphics: Perfect scaling from mobile to 4K displays
UX Design Philosophy
Privacy as a Feature
I made privacy visible, not hidden:
- Zero tracking: No analytics, cookies, or storage
- Transparent data flow: URL encoding makes everything visible
- Client-side execution: All calculations in browser
- No signup friction: Open the link, use the tool
This isn't just ethical — it's practical. Security-conscious organizations can use the tool without compliance reviews.
Progressive Disclosure
Power users get advanced features; casual users get simplicity:
- Default view: Simple timeline with current times
- One click away: Overlap finder, bulk import
- Collapsible help: Format examples hidden until needed
- Smart defaults: Auto-loads user timezone + NY/London/Tokyo
Instant Feedback
Every interaction provides immediate validation:
- Real-time preview during bulk import
- Debounced URL updates (no jank during rapid typing)
- Visual confirmations (color changes, animations)
- Error guidance ("Could not find Atlantis. Did you mean Atlanta?")
Conclusion
Syn-co.me proves that sophisticated technical solutions can respect user privacy without sacrificing functionality. It's not just another timezone tool — it's a demonstration that the zero-backend paradigm can deliver real-world value.
This is what happens when an engineer asks "What if we rebuilt this completely differently?" and follows through with both technical depth and user empathy.