ConvoSync is a modern real-time chat application that allows users to communicate instantly with each other. Built with a robust tech stack including React, Node.js, Express, MongoDB, and Socket.IO, this application provides a seamless and responsive chatting experience.
🔗 Check out the live application
- 💬 Real-time Messaging: Instant message delivery using Socket.IO
- 🔐 User Authentication: Secure signup, login, and logout functionality
- 👤 Profile Management: Update profile pictures using Cloudinary integration
- 🟢 Online Status: See which users are currently online
- 📜 Message History: View past conversations with any user
- 📱 Responsive Design: Works on desktop and mobile devices
- 🖼️ Image Sharing: Send images in chat messages
- 🎨 Theme Support: Multiple theme options
|
|
├── backend/ # Backend server code
│ ├── src/
│ │ ├── controllers/ # Request handlers
│ │ ├── lib/ # Utilities and configurations
│ │ ├── middleware/ # Express middleware
│ │ ├── models/ # Mongoose models
│ │ ├── routes/ # API routes
│ │ └── index.js # Server entry point
│ ├── .env.example # Environment variables template
│ └── package.json # Backend dependencies
│
├── frontend/ # Frontend React application
│ ├── public/ # Static assets
│ ├── src/
│ │ ├── components/ # Reusable UI components
│ │ ├── lib/ # Utilities and helpers
│ │ ├── pages/ # Page components
│ │ ├── store/ # Zustand state stores
│ │ └── App.jsx # Main application component
│ └── package.json # Frontend dependencies
│
└── package.json # Root package.json
- 📦 Node.js (v16 or higher)
- 🍃 MongoDB
- ☁️ Cloudinary account (for image uploads)
-
Clone the repository
git clone https://github.com/kanak227/Convosync.git cd convosync -
Install dependencies
# Install root dependencies npm install # Install backend dependencies cd backend npm install # Install frontend dependencies cd ../frontend npm install
-
Set up environment variables
- Copy
.env.exampleto.envin the backend directory - Fill in your MongoDB URI, JWT secret, and Cloudinary credentials
- Copy
-
Start the development servers
# Start backend server (from backend directory) npm run dev # Start frontend server (from frontend directory) npm run dev
-
Open your browser and navigate to
http://localhost:5173
The application is configured for easy deployment:
- 🔄 Backend serves static frontend files in production mode
- ⚙️ Environment variables control configuration for different environments
- 🌐 Deployed on Render
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License - see the LICENSE file for details.
- Thanks to all the open-source libraries that made this project possible
- Inspired by modern chat applications like Slack and Discord
Built with ❤️ by Kanak


