From 257221f90f81a40c2ef697555da772b8eb8f5b63 Mon Sep 17 00:00:00 2001 From: Subham Date: Sat, 17 Oct 2020 10:02:47 +0530 Subject: [PATCH] Added project on social media platform --- Projects/3-Advanced/Social-platform.md | 36 ++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 Projects/3-Advanced/Social-platform.md diff --git a/Projects/3-Advanced/Social-platform.md b/Projects/3-Advanced/Social-platform.md new file mode 100644 index 00000000..5f9719b4 --- /dev/null +++ b/Projects/3-Advanced/Social-platform.md @@ -0,0 +1,36 @@ + +# Social Media Platform + +**Tier:** 3-Advanced + +This is a bit advanced, so take your time to plot out all features and layouts before starting to work on it. Building a social media platform is challenging since you have to deal with lots of things under the hood to provide a seamless experience to users. I have built one myself (link is provided below), and I can say that it will really enhance your skills if you try. + +Of course, your platform doesn't have to be one like Facebook or twitter. Think from the basics. Initially, just build a platform where people can post a message and others can see it. Next, try to implement likes and dislikes on posts. Take it slow. If you want to avoid coding the backend, use Firebase realtime database and API to help with the backend. + +## User Stories + +- [ ] User can register for an account storing their name, email/username and password then login to the app using their credentials +- [ ] User can create a post which are stored (Preferably in a database) +- [ ] User has a profile that displays all the posts they have uploaded and the likes and dislikes they have managed to get +- [ ] Users can see all posts in their feed and like and dislike as they want. + +## Bonus features + +- [ ] Authenticate every user with OAuth or similar procedures. +- [ ] The feed auth refreshes when a new post is added (You can use Web Sockets) +- [ ] Implementing commenting, reporting and sharing posts +- [ ] User will get notifications when their posts get a comment + +## Useful links and resources + +- [Firebase Realtime Database](https://firebase.google.com/docs/database) +- [Socket.io](https://socket.io) +- [MERN Stack](http://mern.io/) +- [MEAN Stack](http://mean.io/) +- [User Authentication with Node](https://medium.com/silibrain/using-passport-bcrypt-for-full-stack-app-user-authentication-fe30a013604e) +- [Push Notifications](https://buildfire.com/what-is-a-push-notification/) + +## Example projects + +- [Cloakspace](https://cloakspace.tech) +- [Repo of Cloakspace](https://github.com/das-jishu/cloakspace)