Gossip is a real-time chat application built with a modern tech stack. It features user authentication, real-time messaging, and a responsive design. The project is divided into a backend and a frontend, each with its own set of dependencies and configurations.
- User Authentication (Signup, Login, Logout)
- Real-time Messaging with Socket.io
- Profile Management
- Responsive Design with Tailwind CSS and DaisyUI
- Theme Customization
- User Status (Online/Offline)
- Node.js
- Express.js
- MongoDB with Mongoose
- JWT for Authentication
- Cloudinary for Image Uploads
- Socket.io for Real-time Communication
- React
- Vite
- Zustand for State Management
- React Router for Navigation
- Tailwind CSS and DaisyUI for Styling
- Axios for HTTP Requests
- Socket.io-client for Real-time Communication
--Login Page
--Settings Page
--Profile Page
--Home Page
- Node.js
- MongoDB
-
Clone the repository:
git clone https://github.com/vaijaaaaa/gossip.git cd gossip
-
Install dependencies for both backend and frontend:
npm install --prefix backend npm install --prefix frontend
-
Create a
.env
file in thebackend
directory and add your environment variables:PORT=5001 MONGODB_URI=your_mongodb_uri JWT_SECRET=your_jwt_secret CLOUDINARY_CLOUD_NAME=your_cloudinary_cloud_name CLOUDINARY_API_KEY=your_cloudinary_api_key CLOUDINARY_API_SECRET=your_cloudinary_api_secret
-
Build the frontend:
npm run build --prefix frontend
-
Start the backend server:
npm start --prefix backend
-
Open your browser and navigate to [
http://localhost:5173
] to see the application in action.