EchoChat is a modern real-time messaging web app for fast and seamless communication. Built with React for the frontend and Node.js/Express/Socket.IO for the backend, it allows users to create accounts, login securely, and exchange messages instantly. MongoDB handles data storage, and the app features a responsive design for desktop and mobile. Check out the app: https://echochat-jdwys.sevalla.app/signup.
- User Authentication: Secure signup, login, and JWT protection.
- Responsive UI: Built with React and modern CSS for a great experience on any device.
- User Profiles: Basic profile management.
- Real-time Messaging: Instant message exchange powered by Socket.IO.
- Online Status: See which users are active in real time.
- Media Sharing: Support for image/file uploads (extendable).
- Cloud-ready: Easily deployable to popular cloud hosting solutions.
- Node.js >= 20
- MongoDB (local or Atlas)
- npm (or yarn)
-
Clone the repo:
git clone https://github.com/malihanawshin/EchoChat.git cd EchoChat -
Install dependencies:
- Backend:
cd backend npm install - Frontend:
cd ../frontend npm install
- Backend:
-
Configuration:
- Backend: Create a
.envfile in thebackenddirectory and add:MONGODB_URI=<your_mongodb_uri> JWT_SECRET=<your_jwt_secret> - Frontend: Update API endpoints in the code if needed.
- Backend: Create a
-
Run the app:
- Backend:
npm run dev
- Frontend:
npm run dev
Visit
http://localhost:5173to use EchoChat. - Backend:
EchoChat/
├── backend/ # Node.js/Express API + Socket.IO
├── frontend/ # React client
Being deployed on Sevalla.
This project is licensed under the MIT License.