Skip to content

tommyevening/Web-Client-API

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌦️ Web-Client API 💸

🎯 About the Project

The Web-Client API is a desktop application written in Java that showcases my skills in:

  • Object-oriented programming (OOP)
  • Integration with external APIs
  • Designing modern graphical user interfaces
  • Handling real-time data

The application uses JavaFX to create a responsive and visually appealing GUI while integrating with Weather API and Currency API to fetch real-time weather data and exchange rates. Additionally, the Gson library is utilized for seamless JSON data processing.


🌟 Project Scope

🌐 Weather API Integration

  • Fetching real-time weather data: temperature, humidity, pressure, atmospheric conditions.
  • Handling different locations based on user input.

🎨 Modern Graphical Interface (JavaFX)

  • Responsive and visually appealing GUI
  • User interactions such as selecting a location and refreshing data.

💱 Multi-Currency Support (Currency API)

  • Retrieving real-time exchange rates and performing currency conversions.
  • Seamless integration with an external API for dynamic data updates.

📦 JSON Data Processing (Gson)

  • Automatically mapping JSON data to Java objects.
  • Simplified data handling with clean and efficient code.

🏗️ Modular Code Architecture

  • Separating business logic from the presentation layer.
  • Ensuring ease of maintenance and expandability.

🗂️ Project Structure

📂 Service.java

  • Handles business logic for the application.
  • Integrates with Weather API and Currency API.
  • Processes JSON data using the Gson library.

📂 Main.java

  • The main class that runs the application.
  • Initializes the graphical interface and connects all components.

📂 AppGUI.java

  • Manages the graphical user interface.
  • Uses JavaFX to create a modern and responsive GUI.

📂 WeatherCondition.java

  • Represents a set of weather data, including temperature, humidity, and pressure.
  • Automatically maps JSON data to Java objects.

📂 WeatherMain.java

  • A helper class that integrates weather data with application logic.
  • Useful for testing and extending functionality.

🛠️ Technologies Used

Technology Application
Java Core programming language
🎨 JavaFX Creating a modern and responsive GUI
🌐 Weather API Fetching real-time weather data
💱 Currency API Fetching exchange rates and performing conversions
📦 Gson Parsing JSON data and mapping to Java objects
🏗️ OOP Modular code architecture

💡 What This Project Demonstrates

API Integration – Fetching and processing real-time data.
Modern GUI Development – Using JavaFX to create an intuitive and visually appealing interface.
JSON Data Processing – Utilizing the Gson library for efficient JSON parsing.
Object-Oriented Programming – Modular architecture that separates business logic from the UI layer.
Data Handling – Efficient and structured processing of weather and currency exchange data.
Code Quality – Well-structured, maintainable, and scalable code design.


🚀 How to Run the Project

  1. Clone the repository to your local machine.
  2. Set up a Java development environment (JDK 11+).
  3. Install JavaFX, if not already integrated.
  4. Add the Gson library to the project (via Maven/Gradle or manually).
  5. Run the Main.java class to start the application.

🎓 Summary

The Web-Client API project is an example of an application that combines:

  • 🌐 Integration with external APIs – Fetching data from Weather API and Currency API.
  • 🎨 Modern GUI development – Built with JavaFX.
  • 📦 JSON data processing – Using Gson for seamless parsing.
  • 🏗️ Object-oriented programming – A modular and structured codebase.

This project highlights my ability to design and implement desktop applications, integrate external data sources, and work with modern libraries and tools.


About

A Java desktop application that integrates with Weather API and Currency API to fetch real-time weather data and exchange rates. Built with JavaFX for a modern and responsive GUI, and Gson for seamless JSON data processing.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages