Tired of unpredictable weather? Rain keeps you prepared with accurate forecasts, interactive maps, and beautiful design. ๐ฆ๏ธ๐ฑ๐บ๏ธ
๐ Available in 37 languages โข ๐จ Material You & AMOLED โข ๐บ๏ธ Interactive weather map โข ๐ฑ Home widget
๐ก๏ธ Comprehensive Weather Data
- Real-time conditions with feels-like temperature โข Hourly forecasts (12+ days) โข 7+ day daily outlooks
- Detailed metrics: UV index, humidity, wind speed/direction, precipitation, visibility, pressure, dew point
- Day/night-aware weather icons โข Sunrise/sunset times โข Expandable hourly variable details
๐บ๏ธ Interactive Weather Map
- OpenStreetMap-based interactive map โข Weather markers for all saved cities
- Tap markers for quick weather preview โข Long-press to add new locations
- Visual city selection with GPS support โข Map tile caching (30 days) โข Dark mode styling
๐๏ธ Multi-City Management
- Save unlimited cities to your watchlist โข Drag-to-reorder โข Pull-to-refresh all
- City search with autocomplete โข Manual coordinate entry โข GPS auto-detection
- Edit or remove saved cities โข View timezone for each location
๐ Smart Notifications
- Scheduled weather forecasts (1-5 hour intervals) โข Custom time window (start/end)
- Weather-condition-specific icons โข Silent notifications (no sound/vibration)
- Automatic cancellation when disabled โข Background scheduling
๐ฑ Home Screen Widget
- Pin to home screen (Android) โข Shows current temp & weather icon
- Background auto-update (min 15-min interval) โข Customizable background color โข Customizable text color
๐จ Beautiful Design
- Material You dynamic theming (wallpaper colors) โข Pure AMOLED black theme
- Light/Dark/System modes โข Large element mode toggle โข Edge-to-edge display
- Google Fonts (Ubuntu) โข Smooth animations โข Shimmer loading states
๐ Extensive Localization
- 37 languages including: English, ะ ัััะบะธะน, ไธญๆ, ุงูุนุฑุจูุฉ, เคนเคฟเคจเฅเคฆเฅ, Espaรฑol, Franรงais, Deutsch, Portuguรชs, ํ๊ตญ์ด, ๆฅๆฌ่ช, Tรผrkรงe, and many more
- Regional preferences โข 12h/24h time format support
๐งฎ Customization Options
- Temperature: Celsius/Fahrenheit โข Measurement system: Metric/Imperial
- Wind speed: kph/m/s โข Pressure: hPa/mmHg โข Rounded temperatures toggle
- Widget color customization with HSV color picker
Get the latest APK or builds for other platforms from the Releases Section.
- Flutter SDK 3.41.6 or higher
- Dart SDK 3.11.4 or higher
- Android Studio / Xcode for platform-specific builds
# Clone the repository
git clone https://github.com/darkmoonight/Rain.git
cd Rain
# Install dependencies
flutter pub get
# Generate code (for Isar database, Freezed models, JSON serialization)
dart run build_runner build
# Run the app
flutter run
# Build for production
flutter build apk --release # Android APK
flutter build appbundle --release # Android App Bundle (Play Store)
flutter build ios --release # iOSThe project uses code generation for:
- Isar - Database schemas
- Freezed - Immutable data classes
- JSON Serializable - JSON serialization
After modifying files with @freezed, @JsonSerializable, or @collection annotations, run:
dart run build_runner build --delete-conflicting-outputsRain uses free, open weather APIs with no API key required:
- Weather Data: Open-Meteo Weather API - Free, open-source weather API
- Geocoding: Open-Meteo Geocoding API - City search and coordinates
- Map Tiles: OpenStreetMap - Collaborative mapping project
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
If Rain has become an indispensable part of your daily routine, consider supporting development:
This project is licensed under the MIT License.
Thanks to all our amazing contributors!
Made with โค๏ธ using Flutter