Наверное у многих была ситуация, когда нужно снять деньги с карточки а вы не знаете где ближайший банкомат. Если вас такая ситуация застала в родном городе то особо не беда, можно добраться до ближайшего банкомата/банка про который вы знаете. А если такая ситуация возникла в городе, в которым вы плохо ориентируетесь?
Вот из такой цепочки соображений возникла идея для сайта safemoney.com.ua и Android-приложения.
Мое описание с Google play
Список адресов банкоматов и филиалов украинских банков. Есть возможность отобразить все адреса на карте и показать банкоматы возле Вас.
На данный момент доступны банкоматы и филиалы для всех областных центров (кроме Луганска, Донецка и Крым АР). Всего 51 банк с 12652 банкоматами и филиалами.
Проект развивается на бесплатной основе, потому приветствуются желающие помочь в наполнении базы :).
На стороне сервера трудиться Django + Django REST framework. Почему Django, а не, скажем Flask, Tornado, etc.? Тут было интересней разобраться со связкой Android-приложение + REST, чем заниматься оптимизацией backend'a и что не мало важно в Django уже есть из коробки админка, orm, sitemap.
База используется PostgreSQL, хотя это не принципиально. Что-то особого из гео-кодирования пока не используется, только координаты широты и долготы. Сами координаты получаю с помощью замечательного модуля geopy.
Пример
from geopy.geocoders import GoogleV3 geolocator = GoogleV3() address, (latitude, longitude) = geolocator.geocode("Украина, Винница, ул. Пирогова 1") print(address, latitude, longitude) (u"Pyrohova street, 1, Vinnytsia, Vinnyts'ka oblast, Ukraine", 49.232661, 28.457728)
Если есть желающие сделать iOS клиент и у вас есть возможность опубликовать в App Store, то пишите тут в комментариях или напрямую через контакты. По сути, приложение это набор ListView с запросами к REST и отображение результатов запроса на Google Map. Желательно кэшировать результат запроса в локальное хранилище устройства, что бы не дергать сервер на каждый чих или если проблемы с доступом к интернету. Для желающих доступ к API предоставлю.