Click here to go to the Live Demo ๐ฅ ๐ฅ
Youtube demo
Give me a star if you like it. โญ
Authentication system
Users can sign-in with different methods like Google, Twitter, Github, or Email and password
Ability to retrieve password if it is forgotten
Profile screen
-
Follow/Unfollow users
View all followed users on your profile or other's
Unfollow confirmation modal
Show mutual friends
Edit profile
Set profile information and avatar picture
Manage blocked users
Account settings
Change account's Username and Password
Show/Hide activity status
Make account private/public
Disable Comments
Delete account
+ more options
-
Posts
Feed is based on who the user follow
Users can post pictures and videos from a camera or gallery
Crop and filter image posts before sharing
Post audio content like songs or mini podcasts
Publish a tweet
Post a poll question
Post a YouTube video
Like/Dislike posts
View all likes and who liked it
Show mutual likes
Nice animation when liking a post
Comment
Comment or reply to someone's comment
Like/Dislike comments and sub-comments
View all comments and who liked them
Include emojis among hundreds while commenting
Turn off commenting on a specific post
Delete comments or an entire post only by their owners
-
Chat screen
Chat with any user
Share images, videos, audio, documents, and emojis while chatting
Get notified when the other person is typing
Get notified when the other person enters the chat you are in
Unsend and copy messages
Delete chat from both sides
-
Find people
Explore other people's posts
Sort these posts by likes count, comments count, date, or randomly in both ascending and descending orders
Filter them to show images only, videos only, audio only, or posts from people you followed only
-
Notification screen of the latest updates
Notifications can self-destruct if the post, reel, like, or comment that based on it got deleted
Notifications are grouped into multiple sections: Today, Yesterday, This week, This month, and earlier
Block/Unblock users
Share video Reels
Like and comment on other people's reels
Put reels into groups
Account privacy
Search users
Hands-free voice Search or search by typing
-
Suggestions list
View new members within the current week
View upcoming birthdays within the current month
Hover over any user to see their profile in a mini window
Activity Status
Save posts
Included themes are: Dark/light, Iced Coffee, Snorkel Blue, Blue Izis, Butter Cup and honeysucle
-
Compatiblity and performance
Passed multiple automated tests on different functionalites using Cypress.io
Fully responsive on mobile and tablet devices as well
Blazing fast performance
Compatible with all modern browsers including Internet explorer, Firefox, Chrome, Edge ,Opera and Safari.
React.js
Context API
Redux & Redux Thunk
Firebase
SCSS
Styled Components
Stories
Ability to put multiple media contents in one post
Ability to send voice messages
Please note before cloning the project: All functions that are responsible for handling actions like following, liking, commenting, etc.. are exist in Context.js which will not be pushed to the repo until this project gets at least 150 stars. without that file, the app won't work. Knowing that, In the project directory, you can run:
Runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.
The page will reload if you make edits.
You will also see any lint errors in the console.
Launches the test runner in the interactive watch mode.
See the section about running tests for more information.
Launch end to end testing with Cypress.io
Builds the app for production to the build
folder.
It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.
Your app is ready to be deployed!
See the section about deployment for more information.