Giter Club home page Giter Club logo

weather-application's Introduction

Weather Application in Java


Overview

The Weather Application is a Java-based software solution designed to provide users with real-time weather data and forecasts. Leveraging JavaFX for its graphical user interface and MySQL for efficient data storage, this application offers a seamless user experience with robust data management capabilities.

Features

JavaFX GUI: Utilizes the JavaFX library to create an intuitive and visually appealing user interface.

Relational Database: Employs MySQL to store and manage weather data efficiently, ensuring scalability and reliability.

Open Weather APIs: Integrates Open Weather's free-to-use APIs to fetch current weather data, 5-day forecasts, and air pollution information. The application utilizes CurrentWeatherAPI,

WeatherForecast5dayAPI, and AirPollutionAPI for data retrieval. Comprehensive documentation for these APIs can be found here.

InterfaceAPI: Implements a common interface across all APIs, enhancing modularity and maintainability.

Folder Structure

Project_UML: Contains UML diagrams including Sequence and Class diagrams, providing insights into the application's design and architecture.

Src: Houses all the source code for the application.

Src

AppUI: Implements individual user interfaces, including terminal UI and GUI, ensuring versatility in user interaction.

Business Logic: Houses core logic for data exchange between the database (txt or SQL) and user interface, ensuring seamless communication and data integrity.

OpenWeatherAPI: Contains source code for calling Open Weather APIs, facilitating real-time data retrieval and processing.

WeatherAppRunner: Serves as the main control for running the application, orchestrating various components for seamless execution.

WeatherDataStorage: Manages SQL connections, SQL commands for table creation, and schema creation logic. Additionally, it handles data retrieval from SQL databases and txt files, ensuring efficient data management and accessibility.

Usage

To run the Weather Application:

Clone the repository to your local machine. Navigate to the project directory. Execute the WeatherAppRunner class. Follow the on-screen instructions to interact with the application and access weather information.

Acknowledgments

Open Weather for providing free-to-use APIs for weather data. JavaFX and MySQL communities for their valuable libraries and resources.

weather-application's People

Contributors

haiderabb avatar manal-bukhari avatar rehanshafqat avatar tehreem-tahir1 avatar ezza-abdullah1 avatar umair-azeem avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.