Skip to content

About

A WhatsApp-style desktop chat app built with Python and Tkinter. Features contacts, image sharing, block/unblock, and real-time messaging.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

10 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

💬 IPC Chat System — WhatsApp-Style Desktop Messenger

A WhatsApp-inspired desktop chat application built with Python and Tkinter, developed as part of an Operating Systems course to demonstrate Inter-Process Communication (IPC) concepts including message passing, shared memory, and process synchronization.

📸 Screenshot

IPC Chat System

✨ Features

  • 👥 Multiple contacts with switchable "I am" user selector
  • 💬 Real-time text messaging with chat bubbles and timestamps
  • 🖼️ Image sharing support (PNG, JPG, GIF)
  • ↗️ Message forwarding with metadata tagging
  • 🗑️ Delete for me / Delete for everyone
  • ✅ Multi-select messages for bulk delete or forward
  • 🚫 Block / Unblock contacts
  • 🌙 Dark / Light mode toggle
  • 🟢 Active now status indicator
  • 🔇 Silent message drop for blocked contacts

🧠 IPC Concepts Demonstrated

  • Message Passing — transactional send/receive between user processes
  • Shared Memory — conversation histories and media caches
  • Process Synchronization — mutex locks, semaphores, race condition handling
  • Producer-Consumer Pattern — message queue management
  • Atomic Operations — delete-for-everyone with consistency guarantees

🛠️ Tech Stack

  • Python
  • Tkinter (GUI)
  • Pillow / PIL (image handling)
  • Threading & concurrency primitives

🚀 How to Run

  1. Clone the repo
   git clone https://github.com/Manahil-debug/IPC-Chat-System.git
  1. Install dependencies
   pip install pillow
  1. Run the app
   python ipc.py

📄 Documentation

Full system design documentation covering IPC architecture, data models, security, performance, and scalability is included in the project report.

👩‍💻 Author

Manahil Ramzan — GitHub

About

A WhatsApp-style desktop chat app built with Python and Tkinter. Features contacts, image sharing, block/unblock, and real-time messaging.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages