C++ Instant Messaging

Context

Multithreaded client/server messaging application developed in C++17

Description

Instant messaging client/server application developed in C++17 using POSIX sockets and multithreading. The server handles multiple clients simultaneously with a thread-safe architecture using mutex and condition variables. Messages are delivered in batches or after a configurable delay, with broadcast support to send to all users. The client offers a colorful terminal interface with real-time messaging, inbox, user list, and complete history.

December 2025
1 person
University Project • 20/20

Skills used

C++
NASM

Skills

Skills used

C++
NASM

Skills acquired

C++

Features

10Features
Swipe< >
01

Multithreaded client/server architecture with POSIX sockets

C++
NASM
02

Simultaneous management of multiple client connections

NASM
C++
03

Smart queue with batch or delay delivery

C++
NASM
04

Broadcast to send messages to all users

NASM
C++
05

Thread-safe synchronization with mutex and condition variables

C++
NASM
06

Inbox with read and unread messages

NASM
C++
07

Real-time connected users list

C++
NASM
08

Complete history of connections and messages

NASM
C++
09

Colorful terminal interface for client

C++
NASM
10

Server logging with event timestamps

NASM
C++

Gallery

Gallery

3