Fast, focused weather app built with Flutter. Get instant conditions, intelligent insights, and a clean animated experience across Android, iOS, web, and desktop.
- Real-time conditions with AQI, hourly strip, and 10-day outlook
- AI-driven insights: recommendations, health tips, best times, and week-ahead summary
- Animated weather backdrops with dynamic themes
- Location search with typeahead and current-location shortcut
- In-app web views for helpful links
- Modern settings page with License info and help/feedback entry points
WeatherFast uses Weblate for localisation. You can help translate the app by visiting our project on Weblate: https://hosted.weblate.org/engage/asdev-weatherfast/
- Clone and install
git clone https://github.com/aadishsamir123/asdev-weatherfast.git
cd asdev-weatherfast
flutter pub get- Run
flutter runPlatform targets: android, ios, web, macos, windows (enable the desired platforms via flutter config --enable-<platform>).
- Analyze:
flutter analyze - Format:
dart format lib/ test/ - Tests:
flutter test - Build (Android):
flutter build apk --release - Build (iOS):
flutter build ipa --release
lib/main.dart— app entry, theme, navigation shelllib/weather_home.dart— home experience, search, current + forecastlib/detail_screen.dart— insights, AQI, hourly/daily detailslib/services/— data, AI insights, time utilitieslib/ui/— animated weather backdrop and shared UI pieceslib/settings_screen.dart— settings, license, helpassets/— icons, backgrounds, profile art
WeatherFastApp(lib/main.dart) initializes app theme and dynamic colors.WeatherShell(lib/main.dart) hosts the bottom navigation shell (Home, Insights, Settings).WeatherHome(lib/weather_home.dart) is the main weather screen with search, current conditions, hourly strip, and daily forecast.DetailScreen(lib/detail_screen.dart) renders AI insights, recommendations, and deeper forecast details.SettingsScreen(lib/settings_screen.dart) manages app preferences and debug widget refresh actions.HelpScreen(lib/help_screen.dart) shows support actions and routes to feedback forms.WebViewScreen(lib/webview_screen.dart) opens external support/reporting links inside the app.AnimatedWeatherBackdrop(lib/ui/animated_weather_backdrop.dart) paints weather-reactive animated backgrounds.
Reusable UI widgets used in forecast presentation:
_CollapsibleDateHeader,_MetricTile,_ForecastChip,_DailyTileinlib/weather_home.dart.
WeatherFast also supports platform home screen widgets, powered by home_widget and refreshed via workmanager.
- Refresh service:
lib/services/widget_refresh_service.dart - Data is stored whenever weather updates are fetched in
WeatherHome. - Periodic background refresh is scheduled every 15 minutes (with connectivity constraints).
- In debug builds, Settings includes a "Force refresh widgets" action.
- Location permissions are required for “Use my location.”
- Internet access is required for weather/insights data.
Issues and PRs are welcome. Please run flutter analyze and flutter test before submitting.
This project is licensed under the MIT License. See LICENSE for details.