Skip to main content

🔐 PassGuardian: Smart Password Evaluator

PassGuardian is a smart, terminal-based password strength evaluator that helps you create and test strong, secure passwords in real time. It combines entropy analysis, breach detection, actionable feedback, and an optional password generator — all with a colorful, polished CLI experience.


PassGuardian Demo

🚀 Features

  • 🧠 Entropy-based Strength Scoring
  • 🔥 Real-time Breach Check via HaveIBeenPwned API
  • 💡 Smart Feedback with improvement tips
  • 🔁 Interactive Password Generator
  • 🎨 Colorful CLI UI powered by rich
  • 🔐 Built with Security Best Practices

🛠 Tech Stack

  • Python 3
  • rich (for colorful CLI output)
  • requests (for HIBP breach API)
  • Regex & logic-based password scoring
  • Optional: HIBP Pwned Passwords API

⚙️ How to Run

1. Clone the Repository

git clone https://github.com/nv2105/PassGuardian.git
cd PassGuardian

2. Set Up Virtual Environment

python -m venv .venv
source .venv/Scripts/activate  # On Windows
# Or: source .venv/bin/activate  # On Mac/Linux

3. Install Dependencies

pip install -r requirements.txt

4. Run the CLI App

python main.py

📸 Sample Output

🧠 Estimated Entropy: 83.36 bits
✅ No known breaches found for this password.

╭──────────── Result ────────────╮
│ 🔒 Password Strength: Strong!  │
╰───────────────────────────────╯

💡 Tips to Improve:
- Add at least one special character
- Avoid common patterns like '123', 'password'

📂 Project Structure

PassGuardian/
├── passguardian/
│   ├── evaluator.py
│   ├── breaches.py
│   ├── entropy.py
│   ├── generator.py
│   └── __init__.py
├── main.py
├── requirements.txt
├── .gitignore
└── README.md

📌 Author

Naman Vora

Final Year CSE | Aspiring Data Analyst

Github | LinkedIn

📄 License

MIT License

Metadata

Release files for passguardian 1.0.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for passguardian 1.0.0
File Size Uploaded
passguardian-1.0.0.tar.gz 4.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for passguardian 1.0.0
File Interpreter ABI Platform
passguardian-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 10.5 kB

Release files / passguardian-1.0.0.tar.gz

Download URL passguardian-1.0.0.tar.gz
Size 4.8 kB
Tags Source
SHA-256 checksum
How to use checksums
f0a691f250ecc0794c823047121617908e15782fe89931969d85561fa6e3e3f2
BLAKE2b-256 checksum
How to use checksums
61677bdcb18c9f10fdf09a4996ba6c0d0cd011ab1d418eb273d5e31ed94eff89
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.6

Release files / passguardian-1.0.0-py3-none-any.whl

Download URL passguardian-1.0.0-py3-none-any.whl
Size 5.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ba4dfda4c6d5afe59f67586f6292c1a8e5a4d3f59ccc07bd69ea3de6a20f8601
BLAKE2b-256 checksum
How to use checksums
0727e38b8b6e8dc38992e19c22d327cc5a6d2bcb43eab6e388eb37b8d63371fb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.6

Release history Release notifications | RSS feed

This release

1.0.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page