A full-stack MERN social media application developed using CRUD operations and follows RESTful APIs.
View Demo
·
Report Bug
·
Request Feature
Table of Contents
Each user should provide a name, an email, and a password to create an account. The email address should not link to any account in the system.
After joining CoderComm, users can update their profile info like Avatar, Company, JobTitle, Social Links, and a short description about themselves
Users can write posts that contain text content and an image. The new posts will be shown on the user profile page, allowing other users to comment. Users can also react with like or dislike on a post or a comment.
Users can send friend requests to other users who have an open relationship with them. Users can accept or decline a friend request. After accepting a friend request, both become friends, and they can see posts of each other.
- As a user, I can register for a new account with my name, email and password.
- As a user, I can sign in with my email and password.
- As a user, I can stay signed in after refreshing page.
- As a user, I can see a list of other users so that I can send, accept or decline friend requests.
- As a user, I can see the profile of a specific user given a userID
- As a user, I can get my current profile info, and updated allowed fields such as Avatar, Company, Job Title, Social Links, and bio.
- As a user, I can see a list of posts
- As a user, I can create a new posts.
- As a user, I can edit my posts.
- As a user, I can delete my posts.
- As a user, I can see a list of comments on a post.
- As a user, I can write new comments on a post.
- As a user, I can edit my comments.
- As a user, I can delete my comments.
- As a user, I can react to a post or a comment with "Like" or "Dislike"
- As a user, I can send a friend request to another user who is not my friend.
- As a user, I can see a list of friend requests I have received.
- As a user, I can see a list of friend requests I have sent.
- As a user, I can see my friendlist.
- As a user, I can accept or decline a friend request.
- As a user, I can cancel a friend request that I sent.
- As a user, I can remove somebody from my friendlist.
- Clone this repo
https://github.com/BahnMiFPS/codercomm
- Register for a Cloudinary account. And create a unsigned upload preset: https://cloudinary.com/documentation/upload_presets
- Create
/.env
:
REACT_APP_BACKEND_API='https://codercomm-be-production.up.railway.app/api/ or http://localhost:5000/api/'
REACT_APP_CLOUDINARY_CLOUD_NAME = 'cloudinary-cloud-name'
REACT_APP_CLOUDINARY_UPLOAD_PRESET = 'cloudinary-upload-preset'
The upload preset of your cloudinary should be unsigned.
- Run
npm install
- Clone this repo
https://github.com/BahnMiFPS/coderComm-be
- Create
/.env
:
PORT=5000
MONGODB_URI='replace_this_with_your_mongodb_uri'
JWT_SECRET_KEY="replace_this_with_a_secret_key_for_jwt_auth"
- Run
npm run dev
Quang Vu Luong - @LinkedIn - [email protected]
Project Link: https://github.com/BahnMiFPS/codercomm