Skip to main content

Logo

Password validator and generator CLI tool.

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Contributing
  5. License

About The Project

My project is a CLI application that aims to validate the strength of passwords, generate random passwords, and create passwords based on user inputs. The idea for this project was inspired by a similar project on Kaggle, which can be found at here. The password generation and validation functions of this application are based on the Microsoft Password Requirements.

(back to top)

Getting Started

This is an example of how you may give instructions on setting up the project locally.

Setting Up Environment

    Python 3.9.13
    OS: Linux or MacOS
    NOTES
    ⚠️ Commands/Scripts for this project are wrote for Linux-based OS. They may not work on Windows machines.

Installation

  1. Clone the repo and change directory to that folder

    git clone https://github.com/NgoQuocBao1010/QB-generator.git
    
  2. Install all project dependencies

    pip install -r requirements.txt
    

(back to top)


Usage

  1. CLI application's usage

    Command Description
    validate Validate password according to Microsoft rules.
    generate Generate a strong password.
    generate-from Generate a password (or multiple passwords) based on a phrase or word provided by the user.

    validate command

    Argument Option Description
    password ARG The password to validate.
    --username, -u OPT The username correspond to password for extra validation.
    --common-pwd OPT Check if the password is similar to other common passwords
    --common-words OPT Check if the password contains most common used words
    --check-all, -y OPT Shortcut to check for both common passwords and common words.
    --ignore-warnings OPT Ignore all warnings.

    generate command

    Argument Option Description
    --length, -l OPT Length for the generated password. Should be more than 8.
    --special-character OPT If True, password will contains special characters.
    --no-copy OPT Avoid save password to clipboard.

    generate-from command

    Argument Option Description
    user_input ARG A quote or words given by the user.
    --add OPT Additional words to add to the generated password without any modification.
    --all, -a OPT Return all the possible generated passwords.
    --pwd-validation OPT Turn on password strength analysis.
    --max-strength OPT Only return the strongest password
  2. Programmatically usage

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)

License

Distributed under the MIT License.

(back to top)

Acknowledgments

(back to top)

Metadata

Release files for QB-gen 0.0.2

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

Source distribution (sdist)

Source distribution for QB-gen 0.0.2
File Size Uploaded Provenance Actions
QB_gen-0.0.2.tar.gz 18.3 kB Without provenance Details for QB_gen-0.0.2.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for QB-gen 0.0.2
File Interpreter ABI Platform Actions
QB_gen-0.0.2-py3-none-any.whl Python 3 none any Details for QB_gen-0.0.2-py3-none-any.whl

Total release size: 39.4 kB

Release files / QB_gen-0.0.2.tar.gz

Download URL QB_gen-0.0.2.tar.gz
Size 18.3 kB
Tags Source
SHA-256 checksum
How to use checksums
2a4e03bb61e68bb11ea39a5fa03a24b788939aa78fdb6af5ede6b14603d447ab
BLAKE2b-256 checksum
How to use checksums
7d52ec7b6eefa11a5a9d866604eeb4e1598c6e464189aab8e3a34f71881dd379
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.13

Release files / QB_gen-0.0.2-py3-none-any.whl

Download URL QB_gen-0.0.2-py3-none-any.whl
Size 21.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2ef6f1dd0eee3294085097852829bb46174a5f447c268fd40ad8e420bf24b61b
BLAKE2b-256 checksum
How to use checksums
221bac710e7c950671610a21d7a035da4b0b3737b02f067452a4538e2470efae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.13

Security for QB-gen 0.0.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.0.2 This release

2 release files No provenance

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