Crypto Chat is a secure real-time messaging app with a dynamic modern user interface, live online status, and encrypted chats. It was developed using the MERN stack. With the help of Vercel and Socket.IO, it guarantees quick and confidential device connection.
- 🔐 End-to-end encrypted chat
- 💬 Real-time messaging using Socket.IO
- 👤 User authentication (JWT-based)
- 🧑🤝🧑 One-to-one messaging support
- ✅ Online/offline status indicators
- 📱 Responsive and mobile-friendly UI
- 🌙 Dark mode support
Frontend: React+Vite, TailwindCSS
Backend: Node, Express
Database: MongoDB + Mongoose
Deployment: Vercel (Frontend), Render (Backend)
Prerequisites Node.js (v18+)
MongoDB Atlas account (or local MongoDB)
Vite (for React frontend)
Clone the Repository
git clone https://github.com/Tejas028/crypto-chat.git
cd crypto-chatSetup
Backend :-
cd server
npm installCreate a .env file:
PORT=5000
MONGO_URI=<your-mongodb-uri>
JWT_SECRET=<your-secret>
CLOUDINARY_CLOUD_NAME=<cloudinary-name>
CLOUDINARY_API_KEY=<cloudinary-key>
CLOUDINARY_API_SECRET=<cloudinary-secret>Run the backend:
node server.jsFrontend:-
cd client
npm installCreate a .env file in client/:
VITE_REACT_APP_BACKEND_URL=http://localhost:5000
VITE_REACT_APP_ASCII_KEY=3,1,4,1,5 # example ASCII keyRun the frontend:
npm run devContributions are always welcomed!
- Fork the repo
- Create your feature branch: git checkout -b feature/FeatureName
- Commit your changes: git commit -m 'Add FeatureName'
- Push to the branch: git push origin feature/FeatureName
- Open a pull request