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







