郵便番号から住所を取得するgemを作った

https://github.com/tanihiro/zip-code-jp

最近業務で、よくある住所入力のFormで郵便番号から住所を取得するためのAPIを作ることがあったので、なんだったらその部分勉強がてらgemにしちゃおう、ってことで作った。

DBを使うまでも無いと思ったので、住所データは全部JSONファイルにしてコミットしてある。

業務で実装した時は、日本郵便から全部の郵便番号CSVを取得してきて、郵便番号毎にJSONファイルを作ったのだけど、それだとJSONファイルが10万件ぐらいになってしまったので、今回は前半3桁毎にグルーピングした。

インストール

$ gem install zip_code_jp

使い方

require 'zip_code_jp'

address = ZipCodeJp.find '102-0072'
address.prefecture      # 東京都
address.prefecture_kana # トウキョウト
address.prefecture_code # 13
address.city            # 千代田区
address.city_kana       # チヨダク
address.town            # 飯田橋
address.town_kana       # イイダバシ
address.zip_code        # 1020072

感想

初めてgemを作ったけど、すごくお手軽に公開までできた。
gemの公式サイトにはダウンロード数とかも出るからモチベーションも上がる。
gemにできそうだったら、積極的に作っていきたいと思った。