Skip to content

Latest commit

 

History

History
155 lines (102 loc) · 4.01 KB

README.md

File metadata and controls

155 lines (102 loc) · 4.01 KB

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 ✉️ [email protected]

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.