Skip to content

A password strength meter using zxcvbn, Vite, React, TypesScript and Tailwind.

License

Notifications You must be signed in to change notification settings

maverickg59/password-strength

Repository files navigation

Password Strength Meter

This project is a password strength meter built using zxcvbn password strength estimator. It provides a visual representation of password strength to help users understand the difference between weak and strong passwords or passphrases.


Features

  • Password Strength Analysis: Estimates password strength based on common patterns and weaknesses.
  • Crack Time Estimation: Displays time estimates for cracking passwords under different attack scenarios:
    • Online, no rate limiting
    • Online, rate-limited
    • Offline, fast hashing
    • Offline, slow hashing
  • Local Processing: All computations are performed locally in the browser. No data is transmitted outside of your browser, ensuring user privacy.
  • Educational Tool: Helps users learn about the characteristics of strong passwords and the importance of good password hygiene.

Usage

Live Demo

You can access the tool here.

Running Locally

  1. Clone this repository:

    git clone https://github.com/maverickg59/password-strength.git
    cd password-strength-meter
  2. Install dependencies:

    npm install
  3. Start the development server:

    npm run dev
  4. Open the application in your browser at http://localhost:5173.

Build for Production

To create a production build:

npm run build

Serve the production build locally:

npm run preview

License

This project is licensed under the MIT License.


Contributing

Contributions are welcome! If you'd like to contribute:

  1. Fork the repository.
  2. Create a feature branch (git checkout -b feature-name).
  3. Commit your changes (git commit -m "Add feature").
  4. Push the branch (git push origin feature-name).
  5. Open a pull request.

Acknowledgments

  • The MIT License for enabling open-source collaboration.
  • Daniel Lowe Wheeler for writing the password strength estimation logic in zxcvbn.
  • Tailwind CSS for providing their utility-first CSS framework.
  • React for providing their user interface library.
  • Vite for providing their fast and modern build tool and development server.
  • Anchore for providing the Syft CLI used to generate the SBOM.

Disclaimer

This tool is not intended for everyday use. It serves as an educational tool to demonstrate password strength concepts. Keep in mind that no password is truly safe; all passwords can eventually be cracked. Strong password hygiene involves making the process of cracking as challenging as possible for attackers.

About

A password strength meter using zxcvbn, Vite, React, TypesScript and Tailwind.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published