Meta-Clone is a full-stack web application replicating core functionalities of the social media platform Meta (formerly Facebook). This project is built using the MERN stack:
- MongoDB: NoSQL database for storing user data, posts, comments, and more.
- Express.js: Backend framework for routing and handling API requests.
- React.js: Frontend library for building dynamic and responsive user interfaces.
- Node.js: JavaScript runtime for running server-side code.
This project aims to provide a practical demonstration of full-stack development while showcasing the integration of modern web technologies.
- User Authentication: Sign-up, login, and logout functionalities with secure password handling.
- User Profiles: Each user has a customizable profile.
- Post Creation & Interaction: Add new posts with images and text. Like and comment on posts.
- Real-Time Updates: Posts, likes, and comments dynamically update without page reloads.
- Responsive Design: Mobile-friendly layout for seamless usage on various devices.
- Backend API: RESTful API for handling data operations.
- Scalable Architecture: Designed to add more features with ease.
- React.js: For building the user interface.
- CSS: For styling the application.
- Redux (Optional): For state management, if implemented.
- Node.js: JavaScript runtime environment.
- Express.js: Web framework for creating APIs.
- MongoDB: Database for data persistence.
- Mongoose: ODM for MongoDB, simplifying database operations.
- JWT: For secure user authentication.
- Cloudinary (Optional): For managing and storing images.
-
Clone the repository:
git clone https://github.com/TirthRadadiya/Meta-Clone.git cd Meta-Clone
-
Install dependencies for both frontend and backend:
cd frontend npm install cd ../backend npm install
-
Set up the environment variables:
- Create a
.env
file in thebackend
folder. - Add the following variables:
PORT=5000 MONGO_URI=your_mongo_connection_string JWT_SECRET=your_jwt_secret_key CLOUDINARY_NAME=your_cloudinary_name CLOUDINARY_API_KEY=your_api_key CLOUDINARY_API_SECRET=your_api_secret
- Create a
-
Start the development servers:
# Start backend server cd backend npm start # Start frontend server cd ../frontend npm start
-
Open the application in your browser:
http://localhost:3000
Contributions are welcome! If you'd like to improve this project, please follow these steps:
- Fork the repository:
git fork https://github.com/TirthRadadiya/Meta-Clone.git
- Clone your fork:
git clone https://github.com/<your-username>/Meta-Clone.git
- Create a new branch:
git checkout -b feature-name
- Make your changes and commit:
git commit -m "Add feature-name"
- Push to your fork and create a pull request:
git push origin feature-name