Skip to content

enesvta/password-check

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

password-check

password-check is a simple Python package that evaluates the strength of a given password.
It checks for:

  • Minimum length
  • Presence of uppercase and lowercase letters
  • Digits
  • Special characters

It returns a numerical score, strength label, and feedback for missing requirements.


📦 Installation

Once published on PyPI or TestPyPI:

pip install password-check
For local use (cloned from GitHub):

bash
Kopyala
Düzenle
pip install .
🚀 Usage
python
Kopyala
Düzenle
from password_check.checker import check_password_strength

result = check_password_strength("Example123!")
print(result)
Sample output:

python
Kopyala
Düzenle
{
  'score': 5,
  'strength': 'Mükemmel',
  'reasons': []
}
✅ Developed Feature
This package includes a function check_password_strength(password: str) -> dict that:

Returns a score from 0 to 5

Categorizes the password as one of: Zayıf, Orta, Güçlü, Çok Güçlü, Mükemmel

Explains why the password may be weak

🔍 Testing
The project includes test cases using pytest.

To run tests:

bash
Kopyala
Düzenle
pytest
GitHub Actions CI is also configured to run these tests on every push.

🤖 AI Usage
This project was developed with the help of ChatGPT.
AI tools were used to:

Design the function logic

Fix test import path errors and PYTHONPATH issues

Configure setup.py and pyproject.toml

Write GitHub Actions CI pipeline

Structure the project layout and test design

AI support helped speed up development, avoid common mistakes, and improve test coverage.

📁 Project Structure
pgsql
Kopyala
Düzenle
password-check/
├── password_check/
│   └── checker.py
├── tests/
│   └── test_checker.py
├── .github/workflows/
│   └── ci.yml
├── README.md
├── setup.py
└── pyproject.toml

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages