A lightweight real-time chat app built with Node.js, Express, and Socket.IO.
This project is designed as a practice to learn how to build a simple backend with Express and connect it to a frontend using WebSockets for instant communication.
- ⚡ Real-time messaging with WebSocket (Socket.IO)
- 💬 Clean chat interface with message bubbles (WhatsApp-style tails)
- 🌙 Dark mode toggle for better UX
- 🎨 Modern responsive design (HTML + CSS + Vanilla JS)
- 📂 Messages stored locally in
messages.json(up to 50 latest messages)
- Clone this repository:
git clone https://github.com/ryanaxondev/chat-app.git cd chat-app
2. Install dependencies:
npm install
3. Start the server:
npm start
4. Open the app in your browser:
chat-app/ │ ├── public/ # Frontend files │ ├── index.html │ ├── style.css │ └── script.js │ ├── server.js # Express + Socket.IO backend ├── messages.json # Messages storage └── package.json
- 🔐 Add user authentication (login/register system)
- 🗄 Switch to a real database (MongoDB, PostgreSQL, etc.)
- 📱 Build a mobile version with React Native
- 🚀 Deploy on a free hosting service (Heroku, Render, Vercel + Railway, etc.)
Contributions, issues, and feature requests are welcome! For major changes, please open an issue first to discuss what you would like to change.
If you like this project, please give it a ⭐ on GitHub – it helps more people discover it!
MIT License © 2025
