Ultimate Social Media App is the place you can share your ideas very easily and connect with your friends and follow them, built with the MERN Stack technology.
- Features
- Technologies
- Installation
- Run Locally
- API Endpoints
- Environment Variables
- Project Structure
- Screenshots
- Contributing
- License
- JWT-based authentication
- Secure password hashing with bcrypt
- Protected routes and API endpoints
- User registration and login
- Profile customization (avatar, bio, personal info)
- Follow/Unfollow system
- Create, edit, and delete posts
- Like and comment on posts
- Real-time notifications
- Followers/Following system
- News feed with personalized content
- Image upload and optimization
- Avatar customization
- Post media attachments
- Next.js 15 - React framework with App Router
- TypeScript - Type safety and better development experience
- Tailwind CSS - Utility-first CSS framework
- React Hook Form - Form handling and validation
- React Icons && Lucide Icons - Icon library
- Node.js - Runtime environment
- Express.js - Web framework
- MongoDB - NoSQL database
- Mongoose - ODM for MongoDB
- JWT - Authentication tokens
- bcrypt - Password hashing
- Multer - File upload handling
- Socket.io - Real-time communication
- Docker - Containerization
- Vercel - Frontend deployment
- AWS/Heroku - Backend deployment
- Git - Version control
- Postman - API testing
- Node.js (v18 or higher)
- MongoDB (v6 or higher)
- npm or yarn
-
Clone the repository
git clone https://github.com/Ahmed-175/USMP.git cd usmp -
Install dependencies
# Install backend dependencies npm install # Install frontend dependencies cd ./frontend npm install
-
Environment Setup Create
.envfiles in both frontend and backend directories:Backend (.env)
PORT=5000 MONGODB_URI=mongodb://localhost:27017/usmp
Frontend (.env.local)
SEVER_URL=http://localhost:5000
-
Start the development servers Backend
npm run server
Frontend
npm run dev
The application will be available at:
- Frontend: http://localhost:3000
- Backend API: http://localhost:5000








