You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
WeatherApp -- De Nada Assignment - Use BLoC State Management tool
* 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.
Known issue
$ App sometimes logs out by itself after choosing different location city and fetching weather info for it.
* 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
GetX
* no strong typing -> debugging is difficult
* less testability
* less scalability
Problem statement 26 Feb 2024
Tech stack
* Dart
* Flutter
Libraries Used
* flutter_bloc for BLoC implementation,
* dio for HTTP requests
* get_it for dependency injection.
* auto_route for navigation
* Hive for the local database
Functionality
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
UI/UX
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