Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Real-time Chat Application

A WebSocket-based chat application demonstrating multiplexing, user identification, and message persistence.

Features

  • Real-time messaging with WebSocket multiplexing
  • User identification with persistent usernames
  • Online user tracking and presence notifications
  • Message persistence across server restarts
  • Modern UI with responsive design
  • Comprehensive testing suite

Quick Start

npm install
npm start

Open http://localhost:3000 in multiple browser tabs to test real-time chat.

Multiplexing Demo

Experience WebSocket multiplexing in action:

node multiplexing-demo.js

See MULTIPLEXING_GUIDE.md for technical details.

Testing

npm test

6 comprehensive tests covering message broadcasting, user presence, persistence, and validation.

Project Structure

src/
├── server.js          # WebSocket server with multiplexing
├── public/index.html  # Chat client interface
└── test/chat.test.js  # Test suite

multiplexing-demo.js   # Live multiplexing demonstration
MULTIPLEXING_GUIDE.md  # Technical multiplexing guide

Technologies

  • Backend: Node.js, Express, Socket.IO
  • Frontend: HTML5, CSS3, Vanilla JavaScript
  • Persistence: File-based JSON storage
  • Testing: Node.js built-in assert module

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages