Pass-Man is a lightweight, browser-based password manager built with React and Vite.
It was created as a learning project to explore modern frontend tooling and secure client-side storage.
Unlike traditional password managers, Pass-Man is privacy-first: all credentials are stored locally in your browser.
Note: This is a client-side project intended for learning and portfolio purposes.
- Secure local storage for passwords
- Built-in password generator
- Search and filter saved credentials
- Privacy-first: no backend or external database
- Fast and modern UI using React + Vite
- React (UI library)
- Vite (build tool)
- JavaScript
- TailwindCSS (styling)
- React-Toastify (notifications)
- UUID (unique IDs for entries)
- ESLint
- Browser LocalStorage
Pass-Man/
├── src/
│ ├── components/
│ ├── utils/
│ └── App.jsx
├── public/
├── index.html
├── package.json
├── eslint.config.js
├── vite.config.js
└── README.md
- Node.js version 18 or higher
- npm or yarn
Clone the repository
git clone https://github.com/Dhruv-Raichand/Pass-Man.git
Navigate into the project
cd Pass-Man
Install dependencies
npm install
npm run dev
Open your browser at
http://localhost:5173
- Add a password entry with title, username, and password
- Use the password generator to create strong passwords
- Search or filter through saved credentials
- All data is stored locally in the browser
- Lint the code:
npm run lint - Build for production:
npm run build - Preview production build:
npm run preview
- Export / Import passwords
- Dark mode
- IndexedDB support
- Optional cloud sync
Contributions are welcome.
Fork the repository, create a new branch, and submit a pull request.
Pass-Man is intended for learning purposes only.
Passwords are stored in browser LocalStorage without encryption.
Do not use it for sensitive or production credentials.
This project is licensed under the MIT License.
See the LICENSE file for details.