Changelog
All notable changes to QtPyGuiHelper will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Version 1.0.0 (2025-01-08)
Added
Initial release of QtPyGuiHelper
Support for multiple GUI backends:
Qt backend (PySide6/PyQt6) with qtpy abstraction
tkinter backend with dark mode support
wxPython backend with native widgets
GTK backend for Linux/macOS
Comprehensive widget support:
Text input fields (single-line and multi-line)
Password fields with hidden input
Email and URL fields with validation
Number and float fields with range validation
Date, time, and datetime pickers
Checkboxes and radio button groups
Dropdown/combobox selections
File selection dialogs
Advanced form features:
JSON-based configuration system
Tabbed interface support
Required field validation
Custom button actions
Field change callbacks
Tooltips and help text
Form data persistence (save/load JSON)
Dark mode support:
Automatic system theme detection
Proper text visibility in dark themes
Theme-aware widget styling
Utility modules:
ValidationUtils for field validation
FileUtils for JSON data persistence
PlatformUtils for system detection
FormatUtils for data formatting
LayoutUtils for UI layout helpers
Configuration system:
ConfigLoader for JSON configuration parsing
ConfigValidator for configuration validation
Comprehensive error handling
Backend detection and automatic selection
Extensive documentation and examples
Comprehensive test suite
Technical Details
Centralized file I/O operations using FileUtils
Unified validation system across all backends
Modular architecture with pluggable backends
Type hints and comprehensive docstrings
Cross-platform compatibility (Windows, macOS, Linux)
Dependencies
Core: Python 3.8+
Qt backend: PySide6 6.5.0+ or PyQt6 6.5.0+ with qtpy 2.0.0+
wxPython backend: wxPython 4.2.0+
GTK backend: PyGObject 3.42.0+
tkinter backend: Included with Python
Breaking Changes
N/A (Initial release)
Deprecated
N/A (Initial release)
Security
Input validation to prevent injection attacks
Safe JSON parsing with error handling
File path validation for security
Performance
Lazy UI initialization for faster startup
Efficient widget creation and management
Optimized form data handling
Memory-efficient backend selection
Future Releases
Planned features for future releases:
Version 1.1.0 (Planned)
Additional widget types (sliders, progress bars)
Enhanced validation rules and custom validators
Improved theming and styling options
Plugin system for custom widgets
Internationalization (i18n) support
Version 1.2.0 (Planned)
Visual form designer/editor
REST API integration helpers
Database connectivity modules
Advanced layout management
Performance optimizations
Version 2.0.0 (Future)
Web backend support (HTML/JavaScript generation)
Mobile app generation capabilities
Cloud configuration management
Advanced data binding and MVVM patterns
Breaking changes for improved architecture
Contributing
We welcome contributions! Please see our contributing guidelines for:
Bug reports and feature requests
Code contributions and pull requests
Documentation improvements
Testing and quality assurance
License
QtPyGuiHelper is released under the MIT License. See LICENSE file for details.