Skip to content

RadoslavDimchev/Friendly

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Friendly favicon

Make friends, :) with new social network app!

The server and client are deployed on Render

Details

The app is based on MERN stack MongoDB + Express.js + Node.js + React.js

Used libraries

  • server nodemon, bcrypt, body-parser, cors, dotenv,express,gridfs-stream, helmet, jsonwebtoken, mongoose, morgan, multer, multer-gridfs-storage
  • client mui, dotenv, formik, yup react-dropzone, react-redux, redux-persist, @reduxjs/toolkit, @react-google-maps/api, use-places-autocomplete

Usage

clone repo

  • server cd server npm i npm start

  • client cd client npm i npm start

  • email - dimchev@gmail.com

  • password - 12345678

Features

  • light/dark mode
  • mobile responsive
  • like posts
  • make friends
  • google maps
  • users
  • notifications
  • tooltips
  • loaders
  • modals
  • scroll to top
  • not found page
  • validation
  • prettier config for formatting code

User

Logged out

  • view posts
  • view post detais
  • view user profile
  • view user friends
  • share post with link
  • search posts
  • sort posts by likes or recent
  • login, register

Logged in

  • create a post
  • edit and delete post if is owner
  • like a post
  • make and remove friends
  • comment on post
  • logout

Architecture

DB diagram

One user can create many posts, can have many friends (add and remove them), have unique email, hashed password; One post has userId that is id ot it's owner, likes which is Map (userId for key, and true for value, this is if user like the post);

Screenshots

Home Page) Home Pade (dark mode) On Mobile device Details with author menu) Profile Page Friends of user

Releases

No releases published

Packages

No packages published

Languages