Skip to content

Latest commit

 

History

History
43 lines (32 loc) · 1.55 KB

File metadata and controls

43 lines (32 loc) · 1.55 KB

Password Generator

A single‑page password generator that lets you create strong, customizable passwords based on length and character rules. This project highlights front‑end UI design, form handling, and basic security‑aware decisions around password generation.

Features

  • Customizable length: Slider and number input for 4–64 characters, kept in sync.
  • Character set toggles:
    • Lowercase letters
    • Uppercase letters
    • Numbers
    • Symbols
    • Option to avoid ambiguous characters like 0, O, 1, l, etc.
  • Include / exclude rules:
    • Force specific characters to appear at least once.
    • Exclude any characters you don’t want in the password.
  • Secure randomness: Uses the Web Crypto API (window.crypto.getRandomValues) instead of Math.random.
  • User experience:
    • Responsive layout for desktop and mobile.
    • Clear error messages when the configuration is invalid.
    • Copy‑to‑clipboard button with “Copied!” feedback.

Tech Stack

  • HTML: Semantic structure for the password generator page.
  • CSS: Custom responsive layout, dark theme, modern UI styling.
  • JavaScript: Vanilla JS for state handling, validation, password generation, and clipboard support.

How to Run

Option 1 – Open directly

  1. Clone or download this repository.
  2. Open index.html in your browser.

Option 2 – Run with a local static server

  1. Make sure Node.js is installed.

  2. In the project folder, install a simple static server and start it:

    npm install serve --save-dev
    npm run start