An fullstack social network web application, developed using MERN stack.
View Demo »
Frontend client Source Code
·
Backend server Source Code
Table of Contents
DeJaVu is a full-stack social networking web application, built using the MERN stack. It allows users to communicate and interact with other users by sharing their thoughts, ideas and opinions in the form of photo and text feed.
- User profile card
- Follower Card
- Main section user feeds card
- Trending news card
- news data fetch from public API
- Light/dark theme with transition
- Spinner Loader and notification feature
- User Profile details Page
- Personal Feeds
- Project "About" page
- Project "Settings" page
- Protected routes
- User login
- User signup
- Post Feeds Logics:
- Fetch Feed
- Create Feed
- Delete Feed
- Update Feed
- Feeds Logic:
- Display all user Feed
- Display only self and Following user Feeds
- Display Feed by timestamp
- Follower logics:
- Follow a user
- Unfollow a user
-
To setup news widget's API: https://thenewsapi.com
-
Sign up for a MongoDB Atlas database API key
-
Clone the repo
git clone https://github.com/ChiShingLi/DejaVu.git
-
Install NPM packages
npm install
-
Enter your API secrets in the
.env
file- FrontEnd Client:
REACT_APP_NEWS_API_KEY = "ENTER YOUR NEWS ACCOUNT API"; REACT_APP_DATABASE_URL = "ENTER YOUR MONGODB DATABASE URL";
- Backend Client:
PORT = "ENTER YOUR MONGODB DATABASE PORT NUMBER"; DB_PATH = "ENTER YOUR MONGODB DATABASE CONNECTION STRING"; JWT_SECRET = "ENTER YOUR JSON WEB TOKEN SECRET KEY";