Skip to content
maksim zaytsev
Проекты

2022 · React · TypeScript · Recharts

Погодная панель

Дашборд прогноза погоды, объединяющий несколько провайдеров с почасовыми графиками.

Что делает

Собирает почасовые прогнозы от нескольких провайдеров погоды для сохранённого списка городов и выстраивает их на общих графиках, так что расхождение в десять градусов между двумя провайдерами видно, а не усредняется. Пользователь может добавить город, переключить единицы измерения и полистать ближайшие дни по часам.

Как устроен

React и TypeScript, Recharts — для почасовых и суточных графиков. Ответы провайдеров приводятся к единому внутреннему формату уже на этапе запроса — разные API по-разному трактуют единицы, метки времени и осадки, — так что компоненты работают только с нормализованным типом. Прогнозы кэшируются на клиенте на короткое время, чтобы не упираться в лимиты запросов, когда пользователь быстро переключается между сохранёнными городами. Отдельного бэкенда нет: ключи API и ограничение частоты запросов обрабатывает тонкий serverless-прокси перед каждым провайдером.