Skip to content

WeatherAppProject is a Java-based 🌟 desktop app that delivers real-time weather updates & forecasts using the OpenWeather API. Built with Swing, it offers an intuitive UI 🎨, unit switching 🌑️, and weather alerts ⚠️. User preferences are saved for a seamless experience. Future plans include animated weather icons, dark mode, and voice commands! �

Notifications You must be signed in to change notification settings

Stephen5421/WeatherAppProject-Java-Based-Real-Time-Weather-Forecast-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🌀️ WeatherAppProject: Java-Based Real-Time Weather & Forecast App

πŸš€ Overview

The WeatherAppProject is a Java-based application that provides real-time weather updates and multi-day forecasts. It fetches data from the OpenWeather API and displays key weather parameters such as temperature, humidity, wind speed, and conditions. The application features an intuitive Swing-based GUI for a seamless user experience.

πŸ›  Technologies Used

  • Java (JDK 8+) - Core programming language
  • Swing - GUI framework for desktop applications
  • OpenWeather API - For fetching weather data
  • Gson - JSON parsing library

πŸ“Œ Features

  • Current Weather & Multi-Day Forecast - Retrieve real-time weather data and forecasts.
  • Unit Preferences - Switch between metric (Β°C, m/s) and imperial (Β°F, mph) units.
  • Weather Alerts - Get notifications for high and low temperature thresholds.
  • Persistent Settings - User preferences (units and notifications) are saved for future sessions.

πŸ”§ Installation

Prerequisites

Ensure you have Java JDK 8 or higher installed.

Setup & Execution

Step 1: Compile the Code

On Windows:

javac -cp "lib\gson-2.11.0.jar" -d bin src\*.java

On Linux/macOS:

javac -cp "lib/gson-2.11.0.jar" -d bin src/*.java

Step 2: Run the Application

On Windows:

java -cp "bin;lib\gson-2.11.0.jar" WeatherSwingApp

On Linux/macOS:

java -cp "bin:lib/gson-2.11.0.jar" WeatherSwingApp

🎨 UI Preview

WeatherApp GUI

βš™οΈ Usage

  • Check Current Weather - Enter a city name and view weather conditions instantly.
  • Get Forecast - Select a city and number of days to receive weather predictions.
  • Set Preferences - Adjust units (Celsius/Fahrenheit) and enable/disable weather alerts.

πŸ’‘ Future Enhancements

  • Add Animated Weather Icons β˜€οΈπŸŒ§οΈ
  • Improve GUI Design with modern themes 🎨
  • Introduce Voice Commands for hands-free interaction πŸŽ™οΈ
  • Implement Dark Mode for better UI experience πŸŒ™

πŸ” Troubleshooting

  • Ensure the gson-2.11.0.jar file is inside the lib folder.
  • Check your API key settings in WeatherAPIManager.
  • Use correct path separators (; for Windows, : for Linux/macOS) when specifying the classpath.

🀝 Contributing

Pull requests and issues are welcome! Feel free to improve the app or report bugs.


⭐ If you find this project useful, don't forget to star this repository!

About

WeatherAppProject is a Java-based 🌟 desktop app that delivers real-time weather updates & forecasts using the OpenWeather API. Built with Swing, it offers an intuitive UI 🎨, unit switching 🌑️, and weather alerts ⚠️. User preferences are saved for a seamless experience. Future plans include animated weather icons, dark mode, and voice commands! �

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published