A Flutter weather app that goes beyond the forecast: live conditions, hourly and 3-day forecasts and air quality, paired with a physics-based thermal model that estimates the temperature inside your room.
Role
Sole developer
Platform
Android · iOS
State
Riverpod
Data
WeatherAPI · Mapbox
Overview
Outdoor weather data, turned into an indoor answer.
Most weather apps stop at the forecast. Room Temperature App pulls live conditions, forecasts, air quality and UV data, then runs them through a lumped-capacitance thermal model that accounts for room size, sunlight exposure and whether an AC or heater is running, so the number you see is the one that matters inside your room.
Stack: Flutter, Riverpod, REST APIs, Maps.
Architecture
Core, data and presentation layers with Riverpod view-models between the UI and the repository
A request token drops superseded fetches, so rapid city searches never overwrite each other
Pure-Dart thermal model, unit-tested and guarded against NaN and Infinity
Key features
Indoor estimate
A three-stage thermal model covering thermal lag, solar gain and capacity-limited AC or heating.
Weather-reactive scenes
Clear, night, rain, snow, fog and haze scenes, each with legibility-matched text colours.
Cities & map picker
GPS home anchoring, accent-tolerant city search and a pin-drop map picker.
Rich details
AQI, UV index, a sun-path arc, wind compass and pressure gauge.
The challenge
Outdoor temperature is a poor proxy for how a room actually feels. Sunlight, room size and an AC or heater can move the indoor reading by several degrees.
The approach
A pure-Dart thermal model sits between the data layer and the UI. It takes outdoor conditions, sun exposure, room size and HVAC runtime as inputs, and Riverpod recomputes the estimate whenever any of them change.
A Flutter weather app that goes beyond the forecast: live conditions, hourly and 3-day forecasts and air quality, paired with a physics-based thermal model that estimates the temperature inside your room.