Back to battles
easyupcoming
Password Generator
Generate secure passwords with customizable rules and strength analysis.
20 min limit0 participants
javascriptsecurityhtml
PRD
# Password Generator PRD ## Overview Build a password generator that creates secure passwords with customizable rules, provides strength analysis with entropy calculation, and supports multiple generation modes. ## Requirements - Configurable password length from 4 to 128 characters via slider and number input - Toggle inclusion of uppercase letters, lowercase letters, numbers, and symbols - Option to exclude ambiguous characters (0/O, l/1/I) - Custom character exclusion input (user specifies characters to never include) - Password strength meter displaying weak, fair, strong, or very strong - Entropy calculation displayed in bits (e.g., "78.4 bits") - Generate multiple passwords at once in batch mode (up to 10) - One-click copy button for each generated password - Password history showing last 20 generated passwords (stored in sessionStorage only) - Pronounceable password mode (alternating consonants and vowels) - Passphrase mode generating random word combinations (include a built-in word list) - Character distribution preview showing count of each character type - Bulk generate and export passwords as a downloadable text file - Keyboard shortcut to regenerate (Ctrl+G or Cmd+G) ## Tech Stack - HTML, CSS, JavaScript (vanilla or any framework) - Use crypto.getRandomValues() for secure randomness ## Scoring Criteria - **Functional (40%)**: Password generation works, strength meter accurate, all toggles function - **Quality (20%)**: Cryptographically secure randomness, clean code, handles edge cases - **Fidelity (25%)**: All features present including passphrase mode, entropy display, batch export - **Speed (15%)**: Time bonus
Battle Stats
Time Limit20 min
Participants0
Statusupcoming
Rules
- AI-assisted coding tools only -- no manual edits
- Stay within the time limit
- Scoring based on correctness, code quality, and speed
- Session must be recorded via the CLI