/server

Primary LanguageJavaScriptMIT LicenseMIT

Don't forget to star the repo. Demo website : https://mern-social-media-sdp.herokuapp.com/

mern-social-media-complete-project

A MERN stack based project on social media application. It is completely working project. Its' completely responsive application. MongoDB Express React Redux NodeJs are user in this project.

Featurs included in this project:

user features:

  • register and login users.

  • post images can be uploaded using camera or file system.

  • pagination on every pages.

  • Dark mode.

  • copy link of post.

  • report post for spam.

  • search other users by username.

  • user suggestions menu.

  • save any post to collection.

  • saved posts page.

  • delete posts and comments.

  • admin panel is included.

  • Explore page to view other posts by random users.

  • notifications page.

  • profile page.

  • edit profile page user data.

  • password is stored in database in encrypted format with salt.

  • create and edit posts.

  • like ,comment, share and edit posts.

  • posts include text(caption) and image(s).

  • comment on posts.

  • reply comments.

  • like commets.

  • clear notification option.

  • profile page shows user details and posts with following and followers menu.

    Admin features:

  • admin panel shows total number of post ,users,reported posts etc.

  • admin can create or assign other admin accounts.

  • admin can see posts reported by more than specified number of users.

  • admin can delete those reported posts.

What you need to run this application:

  • Node
  • MongoDB or Mongo Atlas
  • Cloudinary account
  • NPM

How to run this application

  1. Make sure MongoDB is running on your system or online.
  2. include MongoDB database link in .env file.
  3. Add cloudinary data in /client/src/utils/imageUpload.js file.
  4. Clone this repository
  5. Open command line in the cloned folder,
    • To install dependencies for backend, run npm install in main folder.
    • To run backend type command node server in main folder.
    • To install dependencies for frontend , run npm install in /client folder.
    • To run frontend type command npm start in /client folder.
  6. Open localhost:3000 in the browser. And application will be up and running. Here are some images of application: login page

admin panel

profile page

home page new post

dark mode

search users

posts menu

explore page