Skip to content

Shreyas-29/meta-clone

Repository files navigation

Meta Clone

Meta Logo

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.

Features

  • 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.

Technologies Used

  • 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.

Getting Started

  1. Clone the repository: git clone <repository-url>
  2. Install dependencies: npm install
  3. Set up environment variables: Create a .env file based on the provided .env.example file and fill in the required information.
  4. Run the application: npm run dev
  5. Open your browser and visit http://localhost:3000 to access the Meta Clone.

Contributing

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!

License

This project is licensed under the MIT License.