/PassMan

Password manager that you don't need.

Primary LanguageTypeScriptMIT LicenseMIT

Passman


Cloud based password manager.
Login using your auth povider, create vault for personal and business purpose and enjoy seamless experience.

License Follow @adarsha_ach

View Demo · Report Bug · Request Feature


Tech Stack

  • ⚡️ Next.js 12
  • ⚛️ React 18
  • ⛑ TypeScript
  • 📙 Database : PostgreSQL
  • 🚓 ORM : Prisma
  • 💄 Component Library : Chakra UI
  • 🔑 Hashing : AES256, Scrypt
  • 📦 Containerization : Docker

Requirements

  • Node.js >= 12.22.0
  • Yarn 1 (Classic)

Local Development

To start the project locally, run:

yarn dev

Open http://localhost:3000 with your browser to see the result.

Env variables setup

  • create new file .env in root folder
  • open .env.example
  • copy the content and paste it to the .env

Fillup .env variables with valid keys for database.

Authentication

You might have seen env variables for authentication in .env file. NextAuth.js has been used for authentication, and Github has been used as provider. Please read this docs setting up keys is fairly simple.

Database setup

This project uses POSTGRESQL db so you need to have POSTGRES installed in you machine or you can use docker. Create database named passman.

To configure your database to use the new schema (i.e. create tables and columns) use the prisma migrate command:

npx prisma migrate dev

Docker Setup

The database has support for Docker. So if you want to run the database in a container, you need to install docker and docker compose

Open terminal in root directory of this project and run docker-compose:

docker-compose up -d

Now, you have postgres port running successfully on PORT 5433. Check using docker ps -a.

Check docker-compose.yml for full configuation.

Scripts

  • yarn dev — Starts the application in development mode at http://localhost:3000.
  • yarn build — Creates an optimized production build of your application.
  • yarn start — Starts the application in production mode.
  • yarn type-check — Validate code using TypeScript compiler.
  • yarn lint — Runs ESLint for all files in the src directory.
  • yarn format — Runs Prettier for all files in the src directory.
  • yarn commit — Run commitizen. Alternative to git commit.

License

This project is licensed under the MIT License - see the LICENSE.md file for more information.

Created by Aadarsha Acharya Deployed on Vercel.