Skip to content

πŸ” Simple yet complete OTP accessed password manager app with REST API server, based on the MERN stack. Project contains Express.js app as a backend (server) & React app as a frontend (client). πŸ“Œ

Notifications You must be signed in to change notification settings

jakubcieslik99/privpass

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

PrivPASS πŸ”

πŸ“Œ Simple yet complete OTP accessed password manager app with REST API server, based on the MERN stack. Project contains Express.js app as a backend (server) and React app as a frontend (client).

GitHub package.json version (subfolder of monorepo) GitHub package.json version (subfolder of monorepo) GitHub top language GitHub repo size Website)

Features

  • Access via OTP sent to the email address
  • Adding, editing and deleting passwords
  • Getting user's selected password
  • Sorting and searching through all user's passwords
  • Storing encrypted passwords

Screenshots

Endpoints Documentation

πŸ“š Documentation of all available endpoints can be found here: API Documentation

Run Locally

  • Clone repository
  git clone https://github.com/jakubcieslik99/privpass.git

ℹ️ Instructions for running server app locally:

  • Navigate to the server directory and install dependencies
  cd privpass/server
  pnpm install
  • Run server app in development mode
  npm run docker
  pnpm run dev

ℹ️ Instructions for running client app locally:

  • Navigate to the client directory and install dependencies
  cd privpass/client
  pnpm install
  • Run client app in development mode
  pnpm run dev

Deployment

ℹ️ Instructions for building and running server app in production

  • Transpile to production build
  pnpm run build
  • Run server app in production mode
  pnpm install --prod
  pnpm run start

ℹ️ Instructions for building and running client app in production

  • Create production build
  pnpm run build
  • Run client app in production mode
  pnpm run preview

Environment Variables

βš™οΈ To run server app, you will need to add the following environment variables to your .env file

  • DIR (default already set for development)

  • ENV (default already set for development)

  • MONGO_VER

  • HOST

  • PORT

  • API_URL

  • APP_URL

  • MONGO_HOST

  • MONGO_PORT

  • MONGO_DB

  • MONGO_USER

  • MONGO_PASSWORD

  • JWT_ACCESS_TOKEN_SECRET

  • JWT_REFRESH_TOKEN_SECRET

  • CRYPTO_SECRET

  • GMAIL_ADDRESS

  • GMAIL_PASSWORD

  • NOREPLY_ADDRESS

( ℹ️ - sample .env config file is provided in the server directory under the name .env.sample )

βš™οΈ To build client app, you will need to add the following environment variables to your .env file

  • VITE_PREVIEW_PORT
  • VITE_API_URL

( ℹ️ - sample .env config file is provided in the client app directory under the name .env.sample )

Languages

πŸ”€ Available client app languages: EN, PL

Feedback

If you have any feedback, please reach out to me at βœ‰οΈ contact@jakubcieslik.com

Authors

  • @jakubcieslik99 (Frontend dev, UI/UX, backend dev, DB management, deployment)

  • @juras99 (Presentation, documentation, some HomeScreen components styling)

Initial versions of this project were developed as part of the subject "Group project" at the University of Zielona GΓ³ra under the patronage of Perceptus Sp. z o.o.. Project was originally called PercPass. Some of the mechanics of the application were changed after the final presentation.

About

πŸ” Simple yet complete OTP accessed password manager app with REST API server, based on the MERN stack. Project contains Express.js app as a backend (server) & React app as a frontend (client). πŸ“Œ

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages