A modern, responsive Weather Application built with Flutter. This app allows users to check real-time weather conditions for any city in the world, featuring dynamic UI updates based on weather status.
| Search City | Sunny Weather | Cloudy Weather |
|---|---|---|
![]() |
![]() |
![]() |
- Real-time Data: Fetches accurate weather data using [WeatherAPI].
- Search Functionality: Search for any city worldwide.
- Dynamic UI: Background colors and themes change based on the weather condition (Sunny, Rainy, Cloudy, etc.).
- Error Handling: Displays user-friendly messages for invalid city names or network errors.
- Responsive Design: Clean interface that works on all screen sizes.
- Framework: Flutter
- Language: Dart
- State Management: Flutter Bloc (Cubit)
- Networking: Dio
- API: WeatherAPI.com
-
Clone the repository:
git clone [https://github.com/your-username/weather-app.git](https://github.com/your-username/weather-app.git)
-
Install dependencies:
cd weather_app flutter pub get -
Setup API Key (Important):
- Get a free API key from WeatherAPI.com.
- Go to
lib/services/weather_service.dart(or wherever you put it). - Replace
'YOUR_API_KEY'with your actual key.
-
Run the app:
flutter run
lib/
├── cubits/ # State Management (WeatherCubit)
├── models/ # Weather Model (Json Parsing)
├── services/ # API Calls (Dio)
├── views/ # UI Screens (HomeView, SearchView)
├── widgets/ # Custom Widgets (No Weather body, Weather info body)
└── main.dart # Entry point


