A real-time chat application built in Java using JavaFX for the user interface and UDP for networking, enabling smooth communication across multiple clients connected through a central server. This project combines efficient networking with a user-friendly GUI, providing an ideal foundation for showcasing Java development and networking skills.
- Real-Time Messaging: Exchange messages instantly across all connected clients.
- Multi-User Chat: Easily add multiple users by starting new client instances.
- User Authentication: Users enter credentials (name, IP, and port) to join the chat.
- Lightweight Server: UDP server handles message routing between clients.
- Simple UI: Clean and intuitive design built with JavaFX, offering easy usability.
- Java Development Kit (JDK) 11 or above: To run and develop the application.
- JavaFX Library: Ensure JavaFX is properly set up as this handles the GUI.
- (Optional) IntelliJ
- Clone the repository:
https://github.com/rxxxge/JavaFX-Networking.git
cd JavaFX-NetworkingSet up JavaFX: Ensure JavaFX is configured in your project settings or IDE.
-
Project can be run in IntelliJ where you run
ServerMaininstance first and then runLogininstance for each client. ForServerMainyou need to specify port, which can be done in Configurations ofServerMain. -
Without IntelliJ project can be built using maven
- UDP Communication: Achieved fast message delivery with minimal overhead, suitable for real-time chat.
- JavaFX Integration: Built an intuitive and responsive GUI for easy user interaction.
- Scalability: Each client operates independently, allowing multiple instances to join simultaneously.
- Enhanced Security: Implement message encryption for secure communication.
- Group Chat Support: Extend to handle multiple chat rooms or groups.
- File Sharing: Add functionality for sending files between users.
