Version 1.0.0-LTS - Long Term Support Release
A secure, offline-capable PWA for phrase-to-password generation
- Open
index.htmlin any modern browser - Start generating secure passwords immediately
- Works completely offline after first load
- Visit the app in Chrome/Edge/Safari
- Click the install prompt or use browser menu
- Enjoy native app experience with offline support
# Start local server for PWA testing
python -m http.server 8000
# Visit: http://localhost:8000- Secure Algorithm: Advanced cipher-based transformation
- Customizable Length: 8-64 character passwords
- Special Characters: Configurable symbol inclusion
- Memorable Phrases: Convert any phrase to secure password
- Dark/Light Themes: Automatic and manual theme switching
- Keyboard Shortcuts: Full keyboard accessibility (Ctrl+G, Ctrl+T, etc.)
- Copy Protection: Secure clipboard handling
- Responsive Design: Works on desktop, tablet, and mobile
- Offline Functionality: Works without internet connection
- Installable: Native app experience on all platforms
- Fast Loading: Cached resources for instant startup
- Background Updates: Automatic app updates
- Dev Dashboard (
dev.html): Development utilities and debugging - Test Lab (
testlab.html): Comprehensive testing environment - Version Management: Built-in versioning system
- Plugin Architecture: Extensible module system
- Social Sharing: Share phrases (never passwords) safely
- URL Generation: Shareable links for phrase templates
- Export Options: Multiple format support
cipher-alchemist/
├── index.html # Main application
├── dev.html # Developer dashboard
├── testlab.html # Testing environment
├── sw.js # Service worker (PWA core)
├── manifest.json # PWA configuration
├── css/ # Modular stylesheets
├── js/ # JavaScript modules
├── assets/ # Icons and documents
└── docs/ # Documentation
main.js- Core application logic and initializationcipher-algorithms.js- Password generation algorithmspwa.js- PWA functionality and service worker registrationui-controls.js- User interface interactionstheme-manager.js- Theme switching and persistencenotifications.js- User feedback and alertskeyboard-shortcuts.js- Accessibility and hotkeys- Additional modules - Specialized features
- Service Worker v8: Robust offline caching with cache-first strategy
- Precaching: All essential resources cached on install
- Runtime Caching: Dynamic content cached on demand
- Offline Fallback: Beautiful offline pages with retry functionality
- Update Management: Automatic updates with user notification
- Q: How do I use it? A: Open
index.html, enter a phrase, get a password - Q: Is it secure? A: Yes! All processing happens locally, nothing sent anywhere
- Q: Does it work offline? A: Absolutely! Full PWA functionality after first visit
- Q: Can I install it? A: Yes! Use browser install prompts or "Add to Home Screen"
- Q: Can I share examples? A: Yes! Share phrases (never passwords) via direct links
- Q: How do I customize it? A: Edit themes in CSS, suggestions in JS, features in config
- Q: Is it accessible? A: Full keyboard navigation, screen reader support, high contrast themes
- Q: Why vanilla JS? A: No dependencies, fast, future-proof, easy to maintain
- Q: How do I report bugs? A: Open an issue or discussion on GitHub
- Q: Troubleshooting? A: Refresh browser, check compatibility, clear cache if needed
Need more help? See our complete FAQ or start a discussion!
- Documentation Index – All guides, developer docs, FAQ, LTS, and more
- FAQ – Frequently asked questions and troubleshooting
- Case Studies – Real-world usage and accessibility examples
- Development Guide – Setup, architecture, and contribution
- Testing Guide – Testing, troubleshooting, and best practices
- LTS Implementation & Protection – LTS status, critical file list, and safe modification protocol
For release notes and version history, see:
// Password generation defaults
DEFAULT_LENGTH: 16
INCLUDE_SPECIAL_CHARS: true
CIPHER_STRENGTH: 'high'
// UI preferences
THEME: 'auto'
NOTIFICATIONS: true
KEYBOARD_SHORTCUTS: true- All settings stored in localStorage
- Persistent across sessions and devices
- Exportable/importable configuration
- Reset to defaults option available
| Shortcut | Action |
|---|---|
Ctrl + Enter |
Generate password |
Ctrl + C |
Copy password (when focused) |
Ctrl + T |
Toggle theme |
Ctrl + ? / F1 |
Show keyboard help |
Tab / Shift+Tab |
Navigate elements |
Alt + 1 / Alt + 2 |
Toggle sections |
Escape |
Close modal/sections |
Delete |
Clear input |
- ✅ Screen Reader Compatible - Full ARIA label support
- ✅ Keyboard Navigation - No mouse required for all functions
- ✅ High Contrast Themes - Built-in visual accessibility options
- ✅ Voice Control Friendly - Compatible with assistive technologies
- ✅ Zoom Compatible - Functions properly at high zoom levels
- ✅ Focus Management - Proper focus trapping in modals
- 2.1.1: All functionality available from keyboard
- 2.1.2: No keyboard trap exists
- 2.4.3: Focus order is logical
- 2.4.7: Focus indicators are visible
- 3.2.1: Focus doesn't trigger unexpected changes
- 4.1.2: All UI components properly identified
- Password Generation: Test various phrases and lengths
- Theme Switching: Verify dark/light mode transitions
- Offline Mode: Disable network and test full functionality
- PWA Installation: Test install/uninstall process
- Keyboard Navigation: Test all shortcuts and accessibility
- Mobile Responsive: Test touch interactions and layouts
- ✅ Chrome 80+: Full PWA support
- ✅ Firefox 75+: Core functionality
- ✅ Safari 13+: iOS PWA support
- ✅ Edge 80+: Full compatibility
- Lighthouse PWA audit: 100/100 score
- Service worker functionality verified
- Offline capability confirmed
- Performance optimized
- Dev Dashboard (
dev.html): Service worker status, cache inspection - Test Lab (
testlab.html): Comprehensive test suite - Browser DevTools: PWA debugging, performance analysis
- No Data Collection: Zero tracking or analytics
- Local Processing: All operations client-side only
- No Network Requests: Works completely offline
- Secure Clipboard: Protected copy operations
- Deterministic: Same phrase always generates same password
- Cryptographically Sound: Based on proven cipher algorithms
- Collision Resistant: Extremely low probability of duplicates
- Memory Safe: No password storage in memory
- Input Sanitization: All inputs properly validated
- XSS Prevention: Sanitized outputs and CSP headers
- HTTPS Requirement: Secure contexts for PWA functionality
- No External Dependencies: Eliminates supply chain risks
update-version.yml- Auto-updates version and changelog on push to maindeployment-status.yml- Monitors and reports deployment statusdeploy-by-version.yml- Version-specific deployment management
lts-manual-release.yml- Manual LTS releases with validation- ✅ Branch Selection - Deploy from any branch (main, hotfix branches)
- ✅ Release Types - Release, Prerelease, Hotfix, LTS
- ✅ Optional Changelog - Auto-generate or skip changelog creation
- ✅ LTS Validation - Additional checks for LTS releases
- ✅ Asset Creation - ZIP/TAR downloads for offline distribution
create-tag-release.yml- Quick tag-based releasesrollback.yml- Emergency rollback capabilities
# For LTS releases, use the manual workflow:
# 1. Go to Actions → LTS Manual Release
# 2. Select:
# - Version: 1.0.1-LTS (or appropriate LTS version)
# - Branch: main (or hotfix branch)
# - Release Type: release
# - Generate Changelog: ✅
# - LTS Release: ✅ (enables additional validation)
# 3. Workflow validates LTS infrastructure
# 4. Creates proper LTS release with documentation- Push to
mainbranch - Automatic deployment via GitHub Pages
- PWA functionality fully supported
- HTTPS enabled by default
- Copy all files to web server
- Ensure HTTPS (required for PWA)
- Configure proper MIME types
- Test service worker registration
- Download repository
- Open
index.htmldirectly - No build process required
- Works from file:// protocol
- Stability Focus: Bug fixes only, no breaking changes
- Security Updates: Critical security patches as needed
- Performance: Optimization improvements
- Compatibility: Browser support maintenance
- Semantic Versioning: MAJOR.MINOR.PATCH
- LTS Versioning: X.Y.Z-LTS for long-term support releases
- Service Worker Versioning: Independent cache versioning
- Automatic Updates: Users notified of new versions
- Manual Releases: Controlled release process via GitHub Actions
- Rollback Capability: Emergency rollback workflows available
# Business Quarter Planning
"Q4Target2025Sales" → 0_4T@r9e+2o25S@1e5
# Healthcare Professional
"EMRSecure2025ER" → 3/\/\R5e(vrre2o253R
# Developer Environment
"ProdServer2025Mumbai" → |>r0cl5er\/er2o25/\/\v/\/\6@!
# Educational Institution
"InclusiveLearning2025" → 1|\|(1v5!\/e1e@r|\|!|\|92o25Share specific examples with direct links:
https://dhruvinrsoni.github.io/cipher-alchemist/?phrase=YourPhrase
- Security Awareness: Visual feedback teaches password entropy principles
- Accessibility Training: Real-world example of inclusive web development
- Developer Learning: Study modular JavaScript architecture and PWA implementation
- Cryptography Concepts: Demonstrates character substitution algorithms in practice
PWA Not Installing
- Ensure HTTPS connection
- Check browser PWA support
- Verify manifest.json validity
- Clear browser cache and retry
Offline Functionality Not Working
- Verify service worker registration in DevTools
- Check cache storage for resources
- Test with hard refresh (Ctrl+Shift+R)
- Review critical files list in docs
Password Generation Issues
- Verify JavaScript is enabled
- Check for browser console errors
- Test with different phrases
- Clear localStorage and retry
Keyboard Shortcuts Not Working
- Ensure modal is not blocking shortcuts
- Check for browser extension conflicts
- Test with different browsers
- Verify JavaScript is enabled
Access dev.html for:
- Service worker status
- Cache inspection
- Performance metrics
- Error logging
- Configuration debugging
If PWA functionality breaks:
- Immediate Action: Revert to last working git commit
- Check Files: Verify all critical files are intact
- Test Service Worker: Check DevTools → Application → Service Workers
- Clear Cache: Force browser cache clear and reload
- Re-register: Clear service worker and re-register
- Full Test: Run complete offline testing protocol
Open index.html, enter a phrase, get a password. Works in any modern browser.
Passwords are generated locally using proven cipher algorithms, never sent anywhere. All processing happens client-side only.
Use the install button or browser prompt. Works on Chrome, Edge, Firefox, Safari.
Yes. All features work offline after first visit. Complete PWA implementation with service worker caching.
Yes. Use direct links with phrase parameters. Only share phrases, never actual passwords.
Edit theme in css/themes.css, suggestions in js/phrase-suggestions.js, UI text in index.html.
Full keyboard navigation, screen reader support, high contrast themes, WCAG 2.1 AA compliant.
Open an issue or discussion on GitHub repository.
No dependencies, fast loading, easy to maintain, future-proof, works everywhere.
This is primarily an educational tool for learning password security concepts. For production use, consider dedicated password managers.
- docs/DEVELOPMENT.md - Developer setup, architecture, and contribution guide
- docs/CHANGELOG.md - Version history and development milestones
- docs/RELEASES.md - Current and previous release information
- docs/LTS_PROTECTION.md - Critical file protection guidelines
- docs/LTS_IMPLEMENTATION_COMPLETE.md - LTS implementation status
- Test Lab: Use
testlab.htmlfor comprehensive testing - Browser DevTools: Check console for errors
- PWA Debugging: Application tab in DevTools
- Local Testing: Python HTTP server for development
- ❓ How to use the app? → This README (complete guide above)
- 🔧 How to develop safely? → docs/LTS_PROTECTION.md
- 📈 What changed recently? → docs/CHANGELOG.md
- 💥 Something broke? → docs/LTS_PROTECTION.md (Emergency Recovery)
- 🔍 Need implementation details? → docs/LTS_IMPLEMENTATION_COMPLETE.md
- 🚀 Want to create a release? → GitHub Actions → "LTS Manual Release" workflow
- ⚡ Need emergency rollback? → GitHub Actions → "Rollback" workflow
✅ Secure Password Generation: Reliable cipher-based algorithms
✅ Offline Functionality: Complete PWA implementation
✅ User Experience: Intuitive, accessible, responsive design
✅ Developer Experience: Clean modular architecture
✅ Zero Dependencies: Pure HTML, CSS, JavaScript
✅ Cross-Platform: Works everywhere modern browsers exist
✅ LTS Ready: Stable, maintainable, documented codebase
✅ Accessibility: WCAG 2.1 AA compliant with full keyboard support
✅ Educational Value: Demonstrates security concepts and best practices
Status: Production Ready - Long Term Support Active 🔒
This LTS release follows a minimalist documentation approach:
- ✅ Essential Information Only: No redundant or outdated docs
- ✅ Single Source of Truth: This README covers everything users need
- ✅ Developer Focus: Technical details in docs/DEVELOPMENT.md
- ✅ Historical Record: docs/CHANGELOG.md preserves development history
- ❌ No Feature Creep: Documentation bloat eliminated
- ❌ No Outdated Guides: Legacy docs removed
📋 LTS Status: LOCKED AND STABLE - Modify with extreme caution 🔒
Built with ❤️ by @dhruvinrsoni - Transform your thoughts into security. Ancient wisdom meets modern technology.