Skip to content

A modern Flutter weather app showing real-time weather, hourly forecasts, and extra details like humidity, wind, and pressure — with a sleek Material 3 UI, dark theme, and pull-to-refresh support. Powered by OpenWeatherMap API.

Notifications You must be signed in to change notification settings

nitindavegit/Weather-APP

Repository files navigation

🌦️ Weather App – Flutter

A beautiful, responsive, and modern Flutter weather app that shows RealTimecurrent weather, hourly forecasts, and key additional information — all powered by the OpenWeatherMap API.

Built with a focus on clean UI, Material 3 design, and smooth user experience.


✨ Features

🔹 Current Weather Overview

Get real-time temperature, sky condition (like Sunny, Clouds, Rain), and icon visuals for your city.

🔹 Hourly Forecast

Horizontally scrollable forecast cards showing weather for the next 8 hours with temperature, time, and sky icon.

🔹 Additional Weather Info

Detailed metrics like:

  • 💧 Humidity
  • 💨 Wind Speed
  • 🎯 Atmospheric Pressure

🔹 Pull-to-Refresh

Tap the refresh icon (🔄) in the AppBar to fetch the latest weather data instantly.

🔹 Modern Material UI

Responsive dark-themed design using Material 3 widgets, cards, and animations.


📸 Screenshots

Dark Theme     Light Theme


🚀 Getting Started

Prerequisites

1. Clone the repository

git clone https://github.com/your-username/weather_app.git
cd weather_app

2. Install dependencies

flutter pub get

3. Set up environment variables

Create a .env file in the root directory:

open_Weather_API_Key=YOUR_OPENWEATHERMAP_API_KEY

Note: The .env file is included in .gitignore and should not be committed.

4. Run the app

flutter run

🛠️ Project Structure

lib/
  main.dart                # App entry point
  weather_screen.dart      # Main UI and logic for weather display
  hourly_focus_item.dart   # Widget for hourly forecast cards
  additional_info_item.dart# Widget for additional info (humidity, wind, pressure)
  secrets.dart             # Loads API key from .env

📦 Dependencies


🧪 Testing

Basic widget test is included in test/widget_test.dart. Run tests with:

flutter test

🤝 Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/YourFeature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin feature/YourFeature)
  5. Open a Pull Request

Acknowledgements

About

A modern Flutter weather app showing real-time weather, hourly forecasts, and extra details like humidity, wind, and pressure — with a sleek Material 3 UI, dark theme, and pull-to-refresh support. Powered by OpenWeatherMap API.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published