{"id":15055896,"url":"https://github.com/haiderabb/weather-application-java","last_synced_at":"2026-01-01T22:40:21.178Z","repository":{"id":237874764,"uuid":"763143964","full_name":"HaiderABB/Weather-Application-JAVA","owner":"HaiderABB","description":"This project is a Weather Application developed in Java using Open Weather APIs. It offers both terminal and GUI interfaces, facilitating data management through file handling and SQL. The interactive GUI is built with JavaFX, utilizing its rich UI controls for an engaging user experience, while MySQL is used for data storage and retrieval.","archived":false,"fork":false,"pushed_at":"2024-05-06T10:11:57.000Z","size":10965,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-01-21T00:39:53.806Z","etag":null,"topics":["css","filehandlinginjava","java-8","java-api","javafx-desktop-apps","jdbc","sql","swing-component","terminal-ui"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HaiderABB.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-25T17:12:30.000Z","updated_at":"2024-07-15T19:04:22.000Z","dependencies_parsed_at":"2024-05-03T13:09:43.213Z","dependency_job_id":"a6ff68c5-03ae-4df1-916b-2442bc392d9b","html_url":"https://github.com/HaiderABB/Weather-Application-JAVA","commit_stats":null,"previous_names":["haiderabb/weather-application","haiderabb/weather-application-java"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HaiderABB%2FWeather-Application-JAVA","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HaiderABB%2FWeather-Application-JAVA/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HaiderABB%2FWeather-Application-JAVA/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HaiderABB%2FWeather-Application-JAVA/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HaiderABB","download_url":"https://codeload.github.com/HaiderABB/Weather-Application-JAVA/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243532531,"owners_count":20306152,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["css","filehandlinginjava","java-8","java-api","javafx-desktop-apps","jdbc","sql","swing-component","terminal-ui"],"created_at":"2024-09-24T21:46:59.745Z","updated_at":"2026-01-01T22:40:21.138Z","avatar_url":"https://github.com/HaiderABB.png","language":"Java","readme":"******Weather Application in Java******\n--------------------------------------------\n--------------------------------------------\n\n****Overview****\n--------------------------------------------\n\nThe 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.\n\n****Features****\n--------------------------------------------\n\nJavaFX GUI: Utilizes the JavaFX library to create an intuitive and visually appealing user interface.\n\nRelational Database: Employs MySQL to store and manage weather data efficiently, ensuring scalability and reliability.\n\nOpen 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, \n\nWeatherForecast5dayAPI, and AirPollutionAPI for data retrieval. Comprehensive documentation for these APIs can be found here.\n\nInterfaceAPI: Implements a common interface across all APIs, enhancing modularity and maintainability.\n\n****Folder Structure****\n--------------------------------------------\n\nProject_UML: Contains UML diagrams including Sequence and Class diagrams, providing insights into the application's design and architecture.\n\nSrc: Houses all the source code for the application.\n\n\n****Src****\n--------------------------------------------\n\nAppUI: Implements individual user interfaces, including terminal UI and GUI, ensuring versatility in user interaction.\n\nBusiness Logic: Houses core logic for data exchange between the database (txt or SQL) and user interface, ensuring seamless communication and data integrity.\n\nOpenWeatherAPI: Contains source code for calling Open Weather APIs, facilitating real-time data retrieval and processing.\n\nWeatherAppRunner: Serves as the main control for running the application, orchestrating various components for seamless execution.\n\nWeatherDataStorage: 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.\n\n****Usage****\n--------------------------------------------\n\nTo run the Weather Application:\n\nClone the repository to your local machine.\nNavigate to the project directory.\nExecute the WeatherAppRunner class.\nFollow the on-screen instructions to interact with the application and access weather information.\n\n**Acknowledgments**\n--------------------------------------------\n\nOpen Weather for providing free-to-use APIs for weather data.\nJavaFX and MySQL communities for their valuable libraries and resources.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaiderabb%2Fweather-application-java","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhaiderabb%2Fweather-application-java","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaiderabb%2Fweather-application-java/lists"}