This Chat Application enables real-time communication, leveraging modern technologies to provide a amazing user experience. It is built using a robust tech stack that ensures performance, security, and scalability.
- Real-Time Messaging: Achieved through a socket client-server connection.
- Secure Authentication: JWT (JSON Web Token) is used for user authentication.
- Responsive Design: Built with Tailwind CSS for a user-friendly interface.
- State Management: Redux Toolkit manages application state effectively.
- RESTful APIs: Built with Node.js and Express for backend functionality.
- Data Protection: Passwords are hashed using bcryptjs.
- React.js: For building the user interface.
- Redux Toolkit: For state management.
- Tailwind CSS: For styling and responsive design.
- Socket.io Client: For real-time data communication with the server.
- Node.js: For server-side logic.
- Express.js: For routing and building RESTful APIs.
- JWT: For secure user authentication.
- bcryptjs: For password hashing and security.
- CORS: To handle cross-origin resource sharing.
- Socket.io: For real-time, bi-directional communication between client and server.
- Node.js and npm installed
- MongoDB for database
- Clone the repository:
git clone https://github.com/MuhammadUmar7195/Chat-application.git
- Navigate to the project directory:
cd Chat-application - Install dependencies:
npm install
- Set up environment variables:
- Create a
.envfile in the root directory.
- Create a
VITE_CLOUDINARY_NAME= VITE_BACKEND_URL=
PORT = FRONTEND_URL = DATABASE_URL = JWT_SECRET_KEY =
- Cloudinary set api -The service where media files are saved through project folder
- Start the backend server:
npm start
- Start the frontend application:
npm run dev
- Access the application at
http://localhost:3000.
There is no license because of my practice based reason.