This project is a Java-based client-server chat application that uses Swing and AWT for the GUI and Sockets for network communication. The project includes a client-side and a server-side application, allowing real-time text communication between two systems.
- Graphical User Interface (GUI) designed using Swing and AWT.
- Chat interface includes user profile, video, call, and more options icons.
- Send and receive messages in real-time.
- Displays message timestamps.
- Exit application with a back button.
- GUI similar to the client-side for a consistent user experience.
- Handles multiple client connections (basic implementation provided).
- Displays received messages in real-time.
- Sends messages to the connected client.
- Frontend: Java Swing and AWT
- Backend: Java Sockets for network communication
- IDE: Eclipse , VSCode
- Protocol: TCP (Transmission Control Protocol)
- Install Java JDK 8+.
- Install any IDE like IntelliJ IDEA or Eclipse.
- Clone the repository:
git clone https://github.com/yourusername/java-chat-application.git
- Open the project in your IDE.
- Compile and run the Server program:
- Navigate to the Server.java file and run the main method.
- Ensure the server is listening on port 6001.
- Compile and run the Client program:
- Navigate to the Client.java file and run the main method.
- The client connects to the server on 127.0.0.1 and port 6001.
- Start chatting between the client and server!
src/
├── Client.java // Client-side application
├── Server.java // Server-side application
└── icons/ // Images used for GUI elementsHere’s how the application looks when running:
| Server-Side | Client-Side |
|---|---|
![]() |
![]() |
Developed by [ Abhinav Anpan ] to explore the fundamentals of Java GUI development and socket programming.

