Архитектура построена на react в связке с redux. Все состояние сохраняется в localstorage при любых изменениях, и при первой загрузке приложения восстанавливается оттуда если оно там есть. Перед запросами на сервер погоды, сначала проверяется получали ли уже данные по этим координатам в indexeddb, Координаты определяются через navigator. Запросы к серверу отправляются через axios. Сборка проекта осуществляется webpack. Локальный сервер поднимается на express с модулем горячей перезагрузки (в случае правок кода, они автоматом публикуются в веб). Для обхода CORS api сервиса яндекс погоды используется модуль http-proxy-middleware. Для удобства разработки применен babel который позволяет писать по стандартам es2015.
https://github.com/unger1984/weather