A full-stack social media application built with the MERN stack, featuring real-time chat, user authentication, notifications, and a clean modern UI. This project aims to provide a smooth and secure communication experience similar to modern social platforms.
- 🔐 User authentication (Sign up / Login)
- 📝 Create, like, and comment on posts
- 💬 Real-time chat with other users
- 👤 Profile customization and updates
- 🌙 Responsive and modern UI
Frontend: React, React Router, Axios, Tailwind CSS (or your styling choice)
Backend: Node.js, Express
Database: MongoDB (or your choice)
Other Tools: JWT Auth, Socket.io (for chat), Cloudinary (for media), etc.
- Clone the repository
git clone https://github.com/dipak0304/SocialMedia.git cd SocialMedia - Install dependencies
npm install
cd backend
npm install
- Create environment file
VITE_CLERK_PUBLISHABLE_KEY= enter your clerk publishable key
VITE_BASEURL=http://localhost:4000
# frontend url
FRONTEND_URL=http://localhost:5173
# database
MONGODB_URL=your database key
PORT=4000
# inngest
INNGEST_EVENT_KEY=your inngest event key
INNGEST_SIGNING_KEY=your inngest signin key
# clerk
CLERK_PUBLISHABLE_KEY=your clerk publishable key
CLERK_SECRET_KEY=clerk secret key
# imagekit
IMAGEKIT_PUBLIC_KEY=your imagekit public key
IMAGEKIT_PRIVATE_KEY=your imagekit private key
IMAGEKIT_URL_KEY=your imagekit url key
# smtp (use smtp bravo) you can search this in google
SENDER_EMAIL=your email which you login in bravo
SMTP_USER=bravo smtp user key
SMTP_PASS=your bravo smtp pass
- Run the app
# Run backend
cd server
npm run server
# Run frontend (in another terminal)
cd client
npm start or npm run dev
Jhola/
├── client/ # React app
├── server/ # Express server
└── README.mdPull requests are welcome! If you'd like to make major changes, please open an issue first to discuss what you’d like to improve.
Jhola is a modern social media platform built with React and Node.js (Express).
It’s designed to connect people, encourage expression, and create meaningful interactions online.
The goal of Jhola is to provide a smooth and enjoyable social experience —
where users can share posts, chat in real time, and build their online presence in a clean, responsive UI.
Made with ❤️ by Dipak