A Flutter-based weather application that provides real-time weather updates, forecasts, and detailed weather data using BLoC for state management.
- Current Weather: Displays the current weather conditions for the user's location.
- Weather Forecast: Shows temperature forecasts, detailed information on air quality, sun, and moon cycles.
- Search Functionality: Allows users to search for weather conditions in other cities.
- Precipitation Details: Provides information on weekly precipitation and thunderstorms.
- Graphical Charts: Visual representation of weather data through charts for easier understanding.
- Intuitive UI: A smooth, gradient-based user interface with a sleek and modern design.
Onboarding Screen 1 | Onboarding Screen 2 | Onboarding Screen 3 | Onboarding Screen 4 |
---|---|---|---|
![]() |
![]() |
![]() |
![]() |
Today Screen | Today Screen | Forecast Screen | Precipitation Screen | Search Screen |
---|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
- Clone the repository:
git clone https://github.com/your_username/weather_app.git
- Navigate to the project directory:
cd weather_app
- Get the required packages:
flutter pub get
- Connect a device or start an emulator.
- Run the app using:
flutter run
- The app will fetch the user's current location weather or allow the user to search for a city's weather using the search bar.
- cubit/: Contains the BLoC implementation for managing the weather data state.
- widgets/: Contains reusable widgets for different UI components.
- screens/: Contains the main screens like
HomePage
andSearchPage
.
Displays today's weather details, including:
- Date, temperature, and weather status.
- Hourly temperature list.
- Air quality information.
- Sun and moon cycles.
- Uses
BlocBuilder
to manage state and display loading, loaded, or error states. - Allows navigation to the search page to find weather data for specific cities.
Provides precipitation-related information, such as:
- Weekly precipitation data.
- Thunderstorm details.
- Displays weather forecasts with visual data using charts.
- Shows weekly weather forecast with temperature variations.
- flutter_bloc: State management using the BLoC pattern.
- flutter: Flutter SDK for UI development.
Contributions are welcome! Feel free to submit a Pull Request with improvements, bug fixes, or new features.
- Fork the repository.
- Create a new branch (
git checkout -b feature/my-feature
). - Make your changes and commit (
git commit -am 'Add new feature'
). - Push to the branch (
git push origin feature/my-feature
). - Create a new Pull Request.
You’ve successfully integrated Chat App into your Flutter app! For more advanced features and customization options.
If you found this guide helpful, don’t forget to ⭐ star this repository on GitHub to show your support!
Thank you for reading!
For any questions or inquiries, feel free to reach out:
- GitHub: mohamedmagdy2301
- Email: [email protected]
This project is licensed under the MIT License - see the LICENSE file for details.