A modern and elegant OTP (One-Time Password) manager with a user-friendly interface and powerful features.
- 🔐 Secure Local Storage - All data stored locally, no internet required
- 📷 QR Code Support - Quick import via QR code scanning
- 🎨 Modern UI - Dark theme, rounded corners, smooth animations
- ⏱️ Visual Countdown - Circular progress bar showing remaining time
- 📤 Multi-format Export - Supports JSON, QR Code, CSV formats
- 🔍 Real-time Search - Quickly find the OTP you need
- 📋 One-click Copy - Click to copy OTP code
- 🌐 Multi-language - Supports English and Traditional Chinese
- Download the latest
EasyOTP.exe - Double-click to run
- Install Python 3.8 or higher
- Clone the repository:
git clone https://github.com/yourusername/easy-otp.git cd easy-otp - Install dependencies:
pip install -r requirements.txt
- Run the application:
python easy_otp.py
To build your own executable:
python build.pyThe executable will be in the dist/ directory.
- GUI Framework: CustomTkinter + Tkinter
- OTP Processing: PyOTP
- QR Code: pyzbar + qrcode
- Packaging: PyInstaller
easy-otp/
├── src/
│ ├── ui/ # UI related
│ │ ├── main_window.py # Main window
│ │ ├── components/ # UI components
│ │ └── themes/ # Theme settings
│ ├── core/ # Core functionality
│ │ ├── otp_manager.py # OTP management
│ │ ├── storage.py # Data storage
│ │ └── settings.py # Settings management
│ ├── utils/ # Utility functions
│ │ ├── qr_handler.py # QR code handling
│ │ ├── export_import.py # Export/import
│ │ └── i18n.py # Internationalization
│ └── assets/ # Resources
│ └── locales/ # Translation files
├── requirements.txt # Dependencies
├── build.py # Build script
├── easy_otp.py # Entry point
└── README.md # Documentation
- Scan QR Code: Click "Add" → "Upload QR Code", select image with OTP QR code
- Manual Input: Click "Add" → "Manual Input", enter label and secret key
- Batch Import: Click "Add" → "Batch Import", import from JSON or QR code directory
- Click OTP code to copy to clipboard
- Circular progress bar shows remaining validity time
- Use search box to quickly find OTP
- Click "..." button in top-right corner
- Choose export format:
- JSON: Complete data for backup
- QR Code: Generate QR code image for each OTP
- CSV: Spreadsheet format for viewing
- Windows users may need to install Visual C++ Redistributable
- First run may trigger antivirus warnings, please add to trusted list
- Keep exported files secure to prevent leaks
Issues and Pull Requests are welcome!
This project is licensed under the MIT License.
