Skip to content

Multi-client chatroom application developed in C++ using socket programming

Notifications You must be signed in to change notification settings

tpstark137/ConnectPro

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

ConnectPro: Real-Time Chat Application

Overview

ConnectPro is a multi-client chatroom application developed in C++ using socket programming and multi-threading. This application allows multiple users to connect and communicate with each other in real-time.

Features

  • Multi-client support: Multiple users can connect to the chatroom simultaneously.
  • Real-time communication: Messages sent by any user are broadcasted to all connected users.
  • Socket programming: Utilizes TCP/IP sockets for network communication.
  • Multi-threading: Ensures that the server can handle multiple clients at the same time by assigning a dedicated thread to each connected client.

Tech Stack

  • C++
  • Socket Programming
  • Multi-threading

Installation and Setup

Prerequisites

  • A C++ compiler (e.g., g++)
  • Basic knowledge of socket programming
  • Linux or Windows environment (Linux preferred for socket programming)

Steps to Setup:

  1. Clone the repository:
    git clone https://github.com/your-username/connectpro.git
  2. Navigate to the project directory:
    cd connectpro
  3. Compile the server and client files:
    g++ server.cpp -o server -lpthread
    g++ client.cpp -o client
  4. Run the server:
    ./server
  5. In a new terminal window, run the client:
    ./client

Usage

  • Start the server first.
  • Run the client on different terminals (or machines) to simulate multiple users.
  • Once connected, users can start sending messages, and the server will broadcast these messages to all connected users.

Future Enhancements

  • Adding user authentication.
  • Introducing private messaging between clients.
  • Implementing a graphical user interface (GUI).
  • Enhancing security with encryption.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contributing

Feel free to contribute to this project by creating a pull request or raising an issue.

Contact

For any queries or issues, reach out at:

About

Multi-client chatroom application developed in C++ using socket programming

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages