Welcome to Meta Clone, a social media platform inspired by Meta (formerly Facebook). This project aims to replicate the core features of Meta, providing users with a familiar and engaging experience to connect, share, and interact with others.
-
User Authentication: Users can create accounts, log in, and securely authenticate their identities to access the full functionality of the Meta Clone.
-
User Profiles: Each user has a profile where they can customize their avatar, update personal information, and share posts and updates with their connections.
-
News Feed: Users can view a personalized news feed that displays posts and updates from the people they follow, keeping them informed and connected.
-
Post Creation: Users can create posts, share text, photos, videos, or links, and express themselves by adding reactions and comments.
-
Real-time Updates: Leveraging Pusher and Redis, the application provides real-time updates for likes, comments, and new posts, ensuring a dynamic and interactive user experience.
-
Friend Requests and Connections: Users can send friend requests, accept or decline requests, and build connections with other users to expand their social network.
-
Privacy and Security: Meta Clone offers privacy settings that allow users to control the visibility of their posts, personal information, and connections.
-
Responsive Design: The application is built using Next.js 13 and Tailwind CSS, ensuring a responsive and visually appealing layout across various devices and screen sizes.
-
Next.js 13: Next.js is a React framework that provides server-side rendering, optimized routing, and other performance-enhancing features for building robust web applications.
-
Tailwind CSS: Tailwind CSS is a utility-first CSS framework that enables rapid UI development with pre-defined classes and customizable styles.
-
Pusher: Pusher is a platform for real-time communication that facilitates instant updates and notifications in the Meta Clone.
-
Redis: Redis is an in-memory data structure store used for caching and real-time data updates in the application.
-
Git: Version control and collaboration for seamless project management.
- Clone the repository:
git clone <repository-url>
- Install dependencies:
npm install
- Set up environment variables: Create a
.env
file based on the provided.env.example
file and fill in the required information. - Run the application:
npm run dev
- Open your browser and visit
http://localhost:3000
to access the Meta Clone.
Contributions are welcome! If you have any suggestions, improvements, or bug fixes, please feel free to open an issue or submit a pull request. Let's make the Meta Clone even better together!
This project is licensed under the MIT License.