* An android/iOS app to get weather details of any place in [India, Nepal, Bhutan, Myanmar and Sri Lanka]
* Auto detects location, quits app on error and fetches device location weather info.
$ App sometimes logs out by itself after choosing different location city and fetching weather info for it.
assignment0.mp4
* strong typing thus easy to catch errors
* testability -> separation of business logic and presentation logic making it
* easier to write unit tests for app
* scalability -> scalable, suitable for all project sizes
* community support
* no strong typing -> debugging is difficult
* less testability
* less scalability
* Dart
* Flutter
* flutter_bloc for BLoC implementation,
* dio for HTTP requests
* get_it for dependency injection.
* auto_route for navigation
* Hive for the local database
1. Firebase Authentication with email.
2. Auth states should be saved locally. Shows User details
3. Gets the current location of your device
4. Fetches weather data from a weather API (OpenWeatherMap)
5. Displays weather information for your location (e.g. weather conditions, temperature, location).
6. Saves locally the last fetched weather info,
In case of any network error shows the last weather info from the local db.
7. Fetches searched location weather data
1. Splash screen
2. Auth screens for signup and sign-in.
3. Home screen where weather info is displayed and signout button.
4. For selecting another location navigate to a different screen where the user can select or enter the new location. After selecting the new location, the screen will be
popped and the data on the home screen should update with the newly selected location