Skip to content

"Real-time chat application in C with SDL2 GUI, sound notifications, and TCP socket communication.

Notifications You must be signed in to change notification settings

Pradipgyawali897/c-network-sockets

Repository files navigation

🎮 C Project: SDL2-Based Chat Client & Server 💬

A real-time messaging application built using C, SDL2, and Windows Sockets. This project brings together low-level networking with a graphical user interface to simulate a simple but interactive client-server chat system.


🧠 Project Description

This project is a real-time chat application written in C that showcases the power of integrating multimedia libraries with network communication. It consists of two parts:

  • Client: A graphical interface powered by SDL2 where users can type and send messages.
  • Server: A background console program that handles multiple client connections and message routing.

Messages are sent over TCP using Windows Sockets, and the client displays them using SDL_ttf fonts on a custom background. Notifications are enhanced with sound effects, and all chat history is logged for future reference.


✨ Features

  • Interactive GUI: Clean SDL2 interface with background image and custom fonts.
  • Real-Time Messaging: Chat system using TCP sockets for instant communication.
  • Sound Alerts: Receive audio notifications every time a message arrives.
  • Chat Logging: Messages are stored locally in a history file.
  • Multi-User Support: The server can manage connections from multiple clients.
  • Efficient Networking: Uses ws2_32 for robust Windows socket programming.

🚧 Under the Hood

The core of the application combines C’s performance with the flexibility of SDL2’s multimedia capabilities. By blending text rendering, image display, and sound with classic socket programming, the project provides an engaging desktop-based communication system — all from scratch in C.


💡 Ideal for learning systems programming, multimedia integration, and network communication.

About

"Real-time chat application in C with SDL2 GUI, sound notifications, and TCP socket communication.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages