0.01
No release in over 3 years
Low commit activity in last 3 years
Map US postal codes to US timezones. Compatible with Rails.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 12.3.2
~> 6.0.4
~> 3.8.0

Runtime

~> 0.6.1
 Project Readme

zip_to_timezone¶ ↑

<img src=“https://travis-ci.com/rgarver/zip_to_timezone.svg?branch=master” alt=“Build Status” /> <img src=“https://badge.fury.io/rb/zip_to_timezone.svg” alt=“Gem Version” />

This gem is designed to map US postal codes to the timezone. The timezone strings are based on ActiveSupport::TimeZone settings that include basic DST information. If used with Rails these timezones will handle DST changes on their own.

Installation¶ ↑

gem install zip_to_timezone

If you are using bundler you can add a line to your Gemfile:

gem "zip_to_timezone"

Usage¶ ↑

This is super simple to use:

ZipToTimezone.get_timezone_for('91304') # => "Pacific Time (US & Canada)"

How it works¶ ↑

This uses Trei longest prefix matching to speed up the searching. This means that all zip codes that start with 90 will be in California and therefore are in Pacific Time. If I need to match on full zip codes in some states to differentiate timezones I can do that (eg: Kansas or Indiana) by just adding more specific entires.

Note on accuracy¶ ↑

This gem combines two things that kind of suck to make them suck less. To do this though I had to make a lot of guesses. Please let me know if there are bad mappings so I can fix them. My data is imperfect and in some places outright wrong. The goal of the project was to handle the 95% case and hopefully grow it to be more accurate over time.

References¶ ↑

Note on Patches/Pull Requests¶ ↑

  • Fork the project. Make your feature addition or bug fix. Add tests for it.

  • This is important so I don’t break it in a future version unintentionally.

  • Commit, do not mess with rakefile, version, or history. (if you want to have your own version, that is fine but bump version in a

commit by itself I can ignore when I pull)

  • Send me a pull request. Bonus points for topic branches.

Copyright © 2009 Ryan Garver. See LICENSE for details.