Skip to content
/ fb Public

This project is a sophisticated emulation of the renowned social media platform, Facebook, constructed utilizing the MERN stack - MongoDB, Express.js, React.js, and Node.js - and enhanced with the real-time capabilities of Socket.io. It delivers dynamic and interactive user experiences, including real-time messaging and notifications, mirroring the

Notifications You must be signed in to change notification settings

jeffjiang13/fb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FB_2023 FB_2023

 

FB_2023

Demo

Facebook Clone

This project is a sophisticated emulation of the renowned social media platform, Facebook, constructed utilizing the MERN stack - MongoDB, Express.js, React.js, and Node.js - and enhanced with the real-time capabilities of Socket.io. It delivers dynamic and interactive user experiences, including real-time messaging and notifications, mirroring the functionality of its mainstream counterpart 🔥.

Backend Repository

https://github.com/jeffjiang13/fb-server

Core Features

  • Powered by the MERN stack (ReactJS, NodeJS, ExpressJS, MongoDB), complemented by the Redux toolkit to facilitate a global store.
  • Adaptive design ensuring fluid responsiveness across all devices.
  • Comprehensive authentication system, including registration, login, and password reset features.
  • Security enhanced through Cookies and JSON Web Tokens (JWT).
  • Real-time notification system with notification history and browser notifications.
  • Engaging real-time messaging between users featuring online statuses and typing indicators.
  • Personalized chat experiences with customizable themes and names.
  • Facilitates group chats with administrative control for member addition and removal.
  • Email verification implemented through Gmail SMTP.
  • Forgotten password support with code sent via email for secure password reset.
  • Thorough form validations using Formik and Yup, including user-friendly error messages.
  • Firebase cloud messaging enables browser notifications.
  • Infinite scroll for seamless post browsing.
  • Diverse post creation options: simple text, colorful backgrounds, photos, and videos.
  • Interactive react system for posts, including like, love, wow, sad, and angry reactions.
  • Encourages user interaction with post comments, photo uploads, and comment likes.
  • Supports comment replies and post sharing with or without captions.
  • Comprehensive post management with delete function.
  • Friendship system with features to send, cancel, and accept friend requests.
  • Following system allowing users to follow or unfollow other users.
  • Dedicated Friends page to track sent and received friend requests.
  • Robust search functionality for finding other users.
  • Search history organized by date.
  • User-friendly profile management with photo upload, cropping, and zooming capabilities.
  • Photo Gallery for easy access to previous photos for profile and cover updates.
  • Profile customization options including user details and bio.
  • Profile About page showcasing user details.
  • Profile Photo Gallery page, displaying all of the user's image uploads.
  • Profile Friends List page with a comprehensive list of the user's friends.
  • User preference accommodation with light/dark mode toggle.
  • Enhanced loading experience with skeleton loaders.

Installation

  • Clone the repository
git clone https://github.com/jeffjiang13/fb.git
  • Install the dependencies
npm install
  • Start the server
npm start

Deployment

To deploy this project run

  npm run build

🔗 Links

linkedin twitter

Authors

🚀 About Me

I'm a Full Stack Developer

Tech Stack

Client: React, Redux

Server: Node, Express, mongoose

This project is for educational purposes only.

About

This project is a sophisticated emulation of the renowned social media platform, Facebook, constructed utilizing the MERN stack - MongoDB, Express.js, React.js, and Node.js - and enhanced with the real-time capabilities of Socket.io. It delivers dynamic and interactive user experiences, including real-time messaging and notifications, mirroring the

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published