use qr to transit messages from OS to other devices, e.g. handset
Project description
๐ฏ PySimpleQR - Professional QR Code Generator
๐ Vibed and rocks with Trae.ai IDE! Built entirely within Trae.ai's intelligent development environment with AI-powered assistance throughout the development process.
A sleek, modern Python desktop application for generating professional QR codes with advanced features and an intuitive user interface.
๐จ Screenshots
โจ Features
๐ฅ๏ธ Modern Desktop Application
- Responsive UI that adapts to different screen sizes
- Beautiful color scheme with professional styling
- Real-time character counter with length warnings
- Intuitive layout with clear visual hierarchy
๐ง Advanced QR Generation
- High-quality QR code generation with PIL/Pillow
- Text truncation for long content (max 2953 chars)
- URL escaping option to prevent auto-detection
- Plain text mode toggle for non-URL content
๐จ Smart Image Handling
- Automatic image resizing to fit preview frame
- Aspect ratio preservation during scaling
- High-quality resampling with LANCZOS algorithm
- 300x300 optimized display with responsive sizing
๐ Export Options
- Save QR codes as PNG files with 95% quality
- Copy to clipboard (Windows native + fallback)
- Test QR generation with sample content
- File dialog integration for easy saving
โก Enhanced UX
- Loading indicators during generation
- Status bar updates for user feedback
- Error handling with informative messages
- Keyboard shortcuts and responsive design
๐ ๏ธ Installation & Setup
Prerequisites
- Python 3.12+
- pip or uv package manager
Quick Start
# Clone the repository
git clone [your-repo-url]
cd pysimpleqr
# Install dependencies
uv pip install -e .
# Or with pip
pip install -e .
# Run the application
python -m pysimpleqr.main
Dependencies
# Core dependencies
qrcode[pil]>=7.4.2
Pillow>=10.0.0
FreeSimpleGUI>=5.0.0
# Optional (for Windows clipboard)
pywin32>=306
๐ Usage
Basic Usage
- Launch the app:
python -m pysimpleqr.main - Enter text: Type or paste your content in the text area
- Generate QR: Click "โจ QR it" button
- Save/Copy: Use "๐พ Save QR" or "๐ Copy QR" buttons
Advanced Options
- Plain text mode: Prevents URL auto-detection by scanners
- Escape URLs: Replaces dots and colons to avoid auto-linking
- Character counter: Shows remaining capacity with color warnings
- Test button: Generates sample QR for quick testing
Keyboard Shortcuts
- Generate: Click "โจ QR it" or press Enter in text area
- Save: Ctrl+S or click "๐พ Save QR"
- Copy: Ctrl+C or click "๐ Copy QR"
- Close: Alt+F4 or click "โ Close"
๐งช Development
Project Structure
pysimpleqr/
โโโ pysimpleqr/
โ โโโ __init__.py
โ โโโ __main__.py # Entry point
โ โโโ main.py # GUI application
โ โโโ qr_core.py # QR generation logic
โโโ tests/ # Comprehensive test suite
โโโ pyproject.toml # Project configuration
โโโ README.md # This file
โโโ [other config files]
Running Tests
# Run all tests
pytest
# Run with coverage
pytest --cov=pysimpleqr tests/
# Run specific test file
pytest tests/test_main.py
Development Features
- 78 comprehensive tests covering all functionality
- Mock testing for GUI components
- Error handling validation
- Cross-platform compatibility
๐ฏ Recent Updates
Latest Features (v2.0)
- โ Smart image resizing - QR codes automatically fit the preview frame
- โ URL escaping - Prevent unwanted URL detection by scanners
- โ Enhanced error handling - Better user feedback and recovery
- โ Improved UI responsiveness - Better layout on different screen sizes
- โ Test button - Quick QR generation for testing purposes
- โ Clipboard integration - Native Windows + fallback support
Technical Improvements
- Aspect ratio preservation during image scaling
- High-quality resampling with LANCZOS algorithm
- Optimized memory usage with proper image handling
- Comprehensive test coverage with 78+ tests
๐ฅ๏ธ System Requirements
Supported Platforms
- Windows (full feature support)
- Linux (with X11/Wayland)
- macOS (with tkinter support)
๐ค Contributing
We welcome contributions! Please see:
- Issues: Report bugs or request features
- Pull Requests: Submit improvements
- Discussions: Share ideas and feedback
๐ License
This project is open source and available under the MIT License.
๐ Links
- Homepage: [GitHub Repository]
- Issues: [GitHub Issues]
- Documentation: [Project Wiki]
Built with โค๏ธ using Trae.ai IDE
This project was developed entirely within Trae.ai's intelligent development environment, leveraging AI-powered coding assistance for rapid development and high-quality code generation.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pysimpleqr-0.1.2.tar.gz.
File metadata
- Download URL: pysimpleqr-0.1.2.tar.gz
- Upload date:
- Size: 21.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.5.25
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bada4e0128bac9c43ff260b33a02ab1c4c834825ea5494023d56ad720a92085b
|
|
| MD5 |
f773f06bbdf3f720ff86ddb13a237bba
|
|
| BLAKE2b-256 |
23a0210ae6f8dc53c5fa5cb5b57eedc2e253ff6d7101959aa9194896b174de39
|
File details
Details for the file pysimpleqr-0.1.2-py3-none-any.whl.
File metadata
- Download URL: pysimpleqr-0.1.2-py3-none-any.whl
- Upload date:
- Size: 11.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.5.25
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
875f014c6ff55f4d257ae25b02b18c5b0ac297543d360ad5c96136e5f742957c
|
|
| MD5 |
32e0e65ade3730520dff14487fd06386
|
|
| BLAKE2b-256 |
88fbf1c5bd3a94a266c67248f4349ad2448d7f05426e28ebbf1a96d2dfb3278b
|