This MERN Stack App is a full-stack web application that combines modern technologies to deliver a seamless and interactive user experience. It features real-time messaging with online user status, secured authentication and authorization, and an intuitive user interface styled with TailwindCSS and Daisy UI. The app leverages Socket.io for real-time communication and Zustand for efficient global state management. With robust error handling and free deployment options, this project is an excellent foundation for scalable, real-time web applications.
Tech Stack: MERN (MongoDB, Express.js, React, Node.js) + Socket.io + TailwindCSS + Daisy UI.
Authentication & Authorization: Secure authentication and authorization using JSON Web Tokens (JWT)
Real-Time Messaging: Instant messaging functionality powered by Socket.io.
Online User Status: Display the online/offline status of users in real time.
Global State Management: Efficient and scalable state management using Zustand.
Error Handling: Comprehensive error handling on both the server and client sides.
Deployment: Deployed on render
Frontend: React, TailwindCSS, Daisy UI
Backend: Node.js, Express.js, Socket.io
Database: MongoDB
State Management: Zustand
Authentication: JWT
Prerequisites
Node.js installed on your system.
MongoDB set up locally or on a cloud service like MongoDB Atlas.
To deploy this project run
git clone https://github.com/avi9611/Click-Talk-MERN-App.git
cd mern-stack-app
Install dependencies for both frontend and backend:
cd client
npm install
cd ../server
npm install
Authentication & Authorization
JWT-based secure login and registration.
Role-based access control.
Real-Time Messaging
Instant communication using Socket.io.
Dynamic online/offline status indicators.
Global State Management
Zustand for a simplified, scalable state management solution.
Error Handling
Robust error-handling mechanisms on both the client and server.
Deployment
Detailed instructions for deploying the app for free using platforms like Vercel and Render.