2025
Vault

A password manager and authenticator in which the server never has access to data in plain text. Encryption is performed in the browser using WebCrypto (AES-GCM), and the backend runs on Node.js with PostgreSQL.

Full-stack Developer

Next.jsTypeScriptWebCrypto

Features

  • Data is encrypted with AES-GCM in the browser before transmission.
  • TOTP code generation with QR code import and one-click copy.
  • Search and categories for organization, along with secure session handling.
  • Responsive Next.js frontend with dark mode.
  • REST API backed by PostgreSQL for authentication and storage.

Technologies used

  • Next.js — App Router frontend and API routes.
  • TypeScript — Types shared across frontend and backend.
  • WebCrypto API — Native browser AES-GCM encryption.
  • Node.js — Backend services and authentication.
  • PostgreSQL — Storage for encrypted credentials.

Build steps

  1. Clone the repository

    git clone https://github.com/giovaniohira/vault && cd vault
  2. Install dependencies

    npm install
  3. Run the development server

    npm run dev

Share this project