The JavaFX Chat Application is a desktop application that facilitates real-time communication between multiple users over a local server. Built using JavaFX for the user interface and Java Sockets for network communication, this application serves as a robust platform for chatting and managing user connections in a local network environment.
- User Authentication: Secure login system for users.
- Real-time Messaging: Send and receive messages instantly.
- Multiple Clients Support: Connect multiple clients to the chat server simultaneously.
User Notifications: Notify users of new messages and user activities. Coming Soon 🔄️Customizable UI: A user-friendly and customizable interface built with JavaFX. Coming Soon 🔄️Sending voice messages. Coming Soon 🔄️Attach Files and photos. Coming Soon 🔄️
- Java Development Kit (JDK) 11 or higher
- JavaFX SDK 11 or higher
- Maven (for dependency management)
- IntelliJ IDEA or any other Java IDE
git clone https://github.com/your-username/javafx-chat-app.git
cd javafx-chat-app
Ensure you have Maven installed. Run the following command to install the necessary dependencies:
mvn clean install
Ensure that JavaFX is correctly set up in your IDE and project. You may need to add the JavaFX library to your project and configure the VM options.
Build the project using your IDE or via Maven:
mvn clean package
- Navigate to the server directory:
cd server/target
- Run the server application:
java -jar server.jar
- Navigate to the client directory:
cd client/target
- Run the client application:
java -jar client.jar
- Ensure the server is running before starting any client instances.
- Clients can connect to the server using the server's IP address and the designated port.
We welcome contributions to improve this chat application. To contribute, follow these steps:
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
). - Make your changes.
- Commit your changes (
git commit -am 'Add some feature'
). - Push to the branch (
git push origin feature-branch
). - Create a new Pull Request.
For any questions or suggestions, please contact [Aly Elesawy] at [[email protected]].