Skip to main content

Password validator and generator CLI tool.

Project description


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)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

QB_gen-0.0.2.tar.gz (18.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

QB_gen-0.0.2-py3-none-any.whl (21.2 kB view details)

Uploaded Python 3

File details

Details for the file QB_gen-0.0.2.tar.gz.

File metadata

  • Download URL: QB_gen-0.0.2.tar.gz
  • Upload date:
  • Size: 18.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for QB_gen-0.0.2.tar.gz
Algorithm Hash digest
SHA256 2a4e03bb61e68bb11ea39a5fa03a24b788939aa78fdb6af5ede6b14603d447ab
MD5 b866bafebb8728c0c790422370ee149b
BLAKE2b-256 7d52ec7b6eefa11a5a9d866604eeb4e1598c6e464189aab8e3a34f71881dd379

See more details on using hashes here.

File details

Details for the file QB_gen-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: QB_gen-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 21.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.13

File hashes

Hashes for QB_gen-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2ef6f1dd0eee3294085097852829bb46174a5f447c268fd40ad8e420bf24b61b
MD5 989d0c00cc8b542252f13fb7378dad58
BLAKE2b-256 221bac710e7c950671610a21d7a035da4b0b3737b02f067452a4538e2470efae

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page