Fetch everything you need to incorporate time zone elements in your app, such as human-friendly names, UTC offsets, and exemplar cities with a free and reliable API.
Hey PH 👋
One of my all-time favorite essays on selling your by-products was penned by @jasonfried:
“The software and web industry can learn a lot from the lumber industry, the oil business, and corn and soybean farmers. Lumber was originally cut for boards for building. Oil was originally drilled for fuel. Corn and soybeans were originally farmed for food. But today these industries have figured out how to use the waste to make even more products.”
When we took a look around our codebase, we realized we were sitting on some pretty useful sawdust!
This project came to life when we set out to build a time zone selector for SavvyCal that humans could actually use (a pretty important thing for a scheduling app!)
It turns out, deduplicating and sourcing reasonable names for the 595 worldwide time zones is a lot trickier than it might seem!
We’ve spent hundreds of hours aggregating, normalizing, and organizing all the ridiculous time zone nuances. For example: Nepal runs on GMT+5¾, Hawaii and Arizona ignore Daylight Savings Time, and UTC+12 and UTC–12 are the same time zone… with a different date.
Use the SavvyCal Time Zone API to fetch everything you need to incorporate time zone elements in your app, such as human-friendly names, abbreviations, UTC offsets, and exemplar cities. Query the API right from your JavaScript front-end (using a public API token), or from your backend — wherever you need to use the data!
Check out the documentation and let me know what you think.
Nice! Very useful for any product which requires timezone info - always a pain. Out of curiosity, are you manually keeping this data updated? Especially regarding things that change randomly, like countries enabling/disabling summer time, etc.
Love this. Currently working with a company to outsource a marketplace - it's a SaaS solution - and scheduling is their raison d'etre, but it's not working.
This is awesome! Curious how you're planning to make money on this? Will it eventually not be free? Would like to use this in our app but can't if we think it will eventually cost us.
@alexander_perry Thanks. We actually do have a OSS Elixir library for getting at the data: https://github.com/svycal/zonex
We wanted to release an API to make it really convenient to fetch this data from any environment (and we already use it ourselves, so there's alignment of effort there).
@derrickreimer a fuzzy search would be amazing, but having worked a bit with APIs, I'd rather see an exact match as fuzzy searches sometimes return unexpected results. A combination of both would be great: search for exact match, if no hit, check fuzzy search and return a 200 or 404 depending on the result would make this, in my opinion, the best timezone API available 😁
I would also expect other search queries like country, or maybe an array of hits when providing an UTC offset.
All in all, these are just feature requests and I think it's awesome what you've created already, just throwing some ideas around, thanks!
Wow, this could be super useful for us when we’re working on Time Zone Pro (https://www.producthunt.com/prod...) improvements. We’re looking at ways to book calendar events through our app too. I’d love to chat about how best to use this and SavvyCal links to book calls. Upvoted!
Nice! Very helpful for any product that needs timezone information—always a hassle. I'm curious, are you manually updating this data? Particularly in regards to sporadic changes. such as nations enabling or disabling summer time, etc.
@sharjeel_ahmad4 yep! we have some automated infrastructure to keep our references to the IANA database (the place where these changes are tracked) up-to-date :)
Geocodio