This project is a simple Password Generator that allows users to create random passwords based on their preferred length and strength. The password generation is done through JavaScript, and the UI is built using HTML and styled with CSS.
You can view the live demo here: password-gen-jade.vercel.app.
The password generator allows users to:
- Select Password Length: The user can specify the desired length of the password (between 6 to 30 characters).
- Choose Password Strength: The user can choose between three levels of strength:
- Easy: Passwords consist of lowercase letters.
- Medium: Passwords consist of lowercase, uppercase letters, and numbers.
- Hard: Passwords consist of lowercase, uppercase letters, numbers, and special characters.
- Generate Password: Upon clicking the "Generate Password" button, a random password is generated based on the selected criteria and displayed in the password field.
- 💻 Responsive Design: The UI is built with a responsive layout, ensuring it works well on various screen sizes.
- 🔒 Dynamic Password Strength: Offers flexibility by allowing the user to choose between easy, medium, and hard password strengths.
- 🔀 Randomized Password Generation: Uses a character set based on the user's selection to generate secure, random passwords.
- 🧼 Simple and Clean UI: A minimalist design with smooth animations.
- The structure is simple, consisting of input fields for password length and strength selection.
- The generated password is displayed in a read-only input field.
- The design uses a gradient background animation for visual appeal.
- The layout is centered and has a modern design with shadows and hover effects for the buttons.
- The password generation logic is handled using the
generatePassword
function. - Based on the selected strength, the character set (
charset
) changes. - The password is generated by randomly selecting characters from the chosen charset.
🖥 How to Run Locally
- Clone the repository:
git clone https://github.com/username/password-generator.git
- Open the index.html file in a browser to view the app.
🚀 Future Improvements
📝 Adding a copy-to-clipboard feature.
🧩 Implementing password validation or strength meter.
🗂 Saving password generation history.