OpenWeather is a project created by Lucas Montano initially as an One-Day-Challange, then he decided to create an Open Source project to help his followers and everyone getting started with Open Source world world building a basic but very strategic application!
To run any Android application built with Flutter you need to configure the enviroments in your machine, you can do this following the the tutorial provided by Google in Flutter website
- Flutter SDK
- Android Studio (to download Android SDK)
- Xcode (for iOS develop only)
- Clone this repo to your local machine using:
https://github.com/lucasmontano/openweathermap-flutter
To run the app you need to have an online emulator or a plugged device and run the following command in the root of the application (openweathermap-flutter/app)
flutter run
flutter run
- Explore the Earth Weather forecast (Real Time)
- Check detailed information about the weather by coordinates (lat, lon)
- Bookmark a location
- Visualize all bookmarked locations in the map
- Remove a bookmark
- Search functionality
- Theme Switcher (Light/Dark Mode)
- Data Cache
- Hours forecast
- Write some tests (of course)
- Core
- Flutter - Flutter is Googleβs UI toolkit for building beautiful, natively compiled applications for mobile, web, and desktop from a single codebase.
- HTTP Comunication
- Swagger - A powerful tool to generate the http client, ever model and exception in Dart.
- State management
- MobX - MobX is a library for reactively managing the state of your applications.
- Flutter MobX - Flutter integration for MobX.
- Project structure
- Flutter Modular - Smart project structure with dependency injection and route management
- Google Maps -Google Maps for Flutter - A Flutter plugin for integrating Google Maps in iOS and Android applications.
To get started...
- π΄ Fork this repo!
- π― Clone this repo to your local machine using
https://github.com/luacasmontano/openweathermap-flutter.git
- π Create your feature branch using
git checkout -b my-feature
- β
Commit your changes using
git commit -m 'feat: My new feature'
;
- π Push to the branch using
git push origin my-feature
;
- π Create a new pull request
After your Pull Request is merged, can you delete your feature branch.
Reach out to me at one of the following places!
- Twitter at @lucas_montano
- Instagram at @lucasmontano
- Linkedin at Lucas Montano
- Youtube at Lucas Montano
This project is licensed under the MIT License - see the LICENSE file for details.
Open Weather on Other Platforms:
- Android: https://github.com/lucasmontano/openweathermap
- iOS: https://github.com/lucasmontano/openweathermap-ios
- React Native: https://github.com/lucasmontano/openweathermap-reactnative
Made with β₯ Enjoy it!