Skip to content

ChatApp is a chat application developed in C# using the MVVM (Model-View-ViewModel) architecture and the Windows Presentation Foundation (WPF) platform. This application allows users to communicate with each other in real-time using a dedicated server and clients connected to it.

Notifications You must be signed in to change notification settings

ioanTeulea/ChatApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

4 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Chat App

Description

This project is a chat application developed in C# using the MVVM (Model-View-ViewModel) architectural pattern. It utilizes TCP listener and TCP client for communication between clients and the server. The application allows users to connect to a server, exchange messages in real-time, and disconnect gracefully.

๐Ÿ“Œ Features

  • Real-time Communication: Users can exchange messages with each other in real-time.
  • MVVM Architecture: Utilizes the Model-View-ViewModel architectural pattern for a clear separation of concerns and easier maintenance.
  • TCP Listener and TCP Client: Implements TCP listener on the server side and TCP client on the client side for communication.
  • Graceful Disconnection: Provides a mechanism for users to disconnect from the server gracefully.

๐Ÿ“Š Implementation Overview

  • Client Class: Represents a client connected to the server, encapsulating its username, unique identifier, and communication functionality.
  • Server Class: Manages connections from multiple clients, broadcasts messages, and handles disconnections.
  • PacketBuilder Class: Builds packets for communication between the server and clients.
  • PacketReader Class: Reads packets received by the server from clients.
  • RelayCommand Class: Implements ICommand interface for use in MVVM pattern, allowing commands to be bound to UI controls.
  • UserModel Class: Represents a user in the application, containing properties for username and unique identifier.
  • MainViewModel Class: Acts as the view model for the main window of the application, handling user interactions, server communication, and updating the UI.

Screenshots

User Connection

ChatApp

User Disconnection

ChatApp

##โœ๏ธ by Teulea Ioan Octavian

About

ChatApp is a chat application developed in C# using the MVVM (Model-View-ViewModel) architecture and the Windows Presentation Foundation (WPF) platform. This application allows users to communicate with each other in real-time using a dedicated server and clients connected to it.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages