sohagmahin / vault-manager

Vault manager [ MERN ]

Home Page:http://36.255.71.194

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

PRs Welcome

πŸ” Vault manager

Vault manager is a simple and minimal password manager. Developed by MERN Stack.

This is a self-learning project. So don’t aspect all functionality which has a real password manager. The repo is absolutely for beginners.
So, What I did in this project?

In Backend: Created user module and vault module. so users can able signup, sign in, and manage their profile. And also store their vaults by vault module. And all important vault data are encrypted by cryptoJS(symmetric-key algorithm) and user module data are encrypted by bcrypt package. So the data are well protected on the database.

In front-end: Made a minimal and user-friendly interface by React and daisyUI(tailwind-based CSS framework). All data are coming from the backend via REST-FULL API. And I used Redux for state management [RTK with Query]. I know this is overwhelming to use redux in a small project like this. but for learning purposes, I did that.

-> vanilla_redux code

Technology:

Frontend:

React Redux TailwindCSS daisyUI

Backend

NodeJS Express.js MongoDB

Core Library for backend

   bcrypt,
   cors,
   crypto-js,
   express-validator,
   jsonwebtoken,
   mongoose

βœ… Done

  • USER CRUD frontend + backend
  • Vaults CRUD frontend + backend
  • Profile Page frontend
  • Forget password frontend
  • Logout frontend

πŸ—οΈ Working progress

  • add profile photo
  • forget password (frontend + backend)
  • Support PWA
  • RTK and RTK-query
  • Dockerize the axpp

πŸš€ Run Project By Docker:

  1. ✏️ Type in terminal:

        docker compose up -d

  You are good to go! visit http://localhost

πŸ”Œ Run Project without Docker:

  1. πŸ”¨ Set up πŸ“ /backend .env file:

        copy .env.dev.backend to /backend/.env then update it by your own config.

  2. πŸ”¨ Set up πŸ“ /frontend .env file:

        copy .env.dev.frontend to /fronend/.env then update it by your own config.
        
  Then hit `npm start for both backend and frontend!`

πŸ“Ή Live Demo link

http://36.255.71.194

Alt text

About

Vault manager [ MERN ]

http://36.255.71.194


Languages

Language:JavaScript 96.9%Language:HTML 1.8%Language:CSS 0.8%Language:Dockerfile 0.5%Language:Procfile 0.0%