Documentation

Features

  • Generate secure passwords with customizable length (7-75 characters)
  • Toggle character sets: uppercase, lowercase, numbers, and special characters
  • Modern Material 3 interface with dark/light theme support
  • Resizable window with adaptive grid layout
  • Instant clipboard integration with visual feedback
  • Smooth animations and interactive tooltips
  • Offline operation - no internet connection required

Desktop Application Usage

Launch PwdGen from your applications menu or terminal:

pwdgen

Interface Elements

  • Character Set Toggles: Enable/disable uppercase, lowercase, numbers, and special characters
  • Password Length Slider: Adjust from 7 to 75 characters
  • Generate Button: Create a new password based on your settings
  • Copy Button: Instantly copy the generated password to clipboard
  • Theme Toggle: Switch between light and dark modes
  • Window Resize: Toggle between compact and expanded layouts

Installation Options

Linux (Recommended)

Install via APT repository:

# Add repository
wget -qO- https://zahid4kh.github.io/my-apt-repo/KEY.gpg | sudo gpg --dearmor -o /usr/share/keyrings/zahid-archive-keyring.gpg
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/zahid-archive-keyring.gpg] https://zahid4kh.github.io/my-apt-repo stable main" | sudo tee /etc/apt/sources.list.d/zahid-apps.list

# Install
sudo apt update && sudo apt install pwdgen

Windows

Windows installers (.msi and .exe) are coming soon!

Build from Source

git clone https://github.com/zahid4kh/pwdgen.git
cd pwdgen
chmod +x gradlew
./gradlew run

Security Best Practices

  • Use passwords with at least 12 characters for better security
  • Include a mix of all character types when possible
  • Generate unique passwords for each account
  • Consider using a password manager to store generated passwords
  • Regularly update passwords for critical accounts

Technical Details

  • Platform: Kotlin with Compose Desktop
  • UI Framework: Material 3 design system
  • Requirements: JRE 17+ (automatically installed with package)
  • Package Size: ~110MB installed (includes JRE)
  • Data Storage: All generation happens in memory - no data persistence