# Version History > ๐Ÿ“– **Consolidated Documentation**: This document combines multiple documentation files for better organization and easier navigation. ## Table of Contents - [Overview](#overview) ## Overview Version history and release notes (preserved as-is) All notable changes to TheChart project are documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ### [1.9.5] - 2025-08-05 #### ๐ŸŽจ Major UI/UX Overhaul - **Added**: Professional theme system with ttkthemes integration - **Added**: 8 curated themes (Arc, Equilux, Adapta, Yaru, Ubuntu, Plastik, Breeze, Elegance) - **Added**: Dynamic theme switching without restart - **Added**: Theme persistence between sessions - **Added**: Comprehensive settings window with tabbed interface - **Added**: Smart tooltip system with context-sensitive help - **Improved**: Table selection highlighting and alternating row colors - **Improved**: Modern styling for all UI components (buttons, frames, forms) - **Improved**: Professional card-style layouts and enhanced spacing #### โš™๏ธ Settings and Configuration System - **Added**: Advanced settings window (accessible via F2) - **Added**: Theme selection with live preview - **Added**: UI preferences and customization options - **Added**: About dialog with detailed application information - **Added**: Settings persistence across application restarts #### ๐Ÿ’ก Enhanced User Experience - **Added**: Intelligent tooltips for all interactive elements - **Added**: Specialized help for pathology scales and medicine options - **Added**: Non-intrusive tooltip timing (500-800ms delay) - **Added**: Quick theme switching via menu bar - **Improved**: Visual hierarchy with better typography and spacing - **Improved**: Professional color schemes across all themes #### ๐Ÿ—๏ธ Technical Architecture Improvements - **Added**: Modular theme manager with dependency injection - **Added**: Tooltip management system - **Added**: Enhanced UI manager with theme integration - **Improved**: Code organization with separate concerns - **Improved**: Error handling with graceful theme fallbacks ### [1.7.0] - 2025-08-05 #### โŒจ๏ธ Keyboard Shortcuts System - **Added**: Comprehensive keyboard shortcuts for improved productivity - **Added**: File operations shortcuts (Ctrl+S, Ctrl+Q, Ctrl+E) - **Added**: Data management shortcuts (Ctrl+N, Ctrl+R, F5) - **Added**: Window management shortcuts (Ctrl+M, Ctrl+P) - **Added**: Table operation shortcuts (Delete, Escape) - **Added**: Help system shortcut (F1) - **Added**: Menu integration showing shortcuts next to menu items - **Added**: Button labels updated to show primary shortcuts - **Added**: In-app help dialog accessible via F1 - **Added**: Status bar feedback for all keyboard operations - **Improved**: Button text shows shortcuts (e.g., "Add Entry (Ctrl+S)") - **Improved**: Case-insensitive shortcuts (Ctrl+S and Ctrl+Shift+S both work) ##### Keyboard Shortcuts Added: - **Ctrl+S**: Save/Add new entry - **Ctrl+Q**: Quit application (with confirmation) - **Ctrl+E**: Export data - **Ctrl+N**: Clear entries - **Ctrl+R / F5**: Refresh data - **Ctrl+M**: Manage medicines - **Ctrl+P**: Manage pathologies - **Delete**: Delete selected entry (with confirmation) - **Escape**: Clear selection - **F1**: Show keyboard shortcuts help #### ๐Ÿ“š Documentation Updates - **Updated**: FEATURES.md with keyboard shortcuts section - **Added**: KEYBOARD_SHORTCUTS.md with comprehensive shortcut reference - **Updated**: In-app help system with shortcut information - **Updated**: About dialog with keyboard shortcut mention ### [1.6.1] - 2025-07-31 #### ๐Ÿ“š Documentation Overhaul - **BREAKING**: Consolidated scattered documentation into organized structure - **Added**: Comprehensive `docs/FEATURES.md` with complete feature documentation - **Added**: Detailed `docs/DEVELOPMENT.md` with testing and development guide - **Updated**: Streamlined `README.md` with quick-start focus and navigation - **Removed**: 10 redundant/outdated markdown files - **Improved**: Clear separation between user and developer documentation #### ๐Ÿ—๏ธ Documentation Structure ``` docs/ โ”œโ”€โ”€ FEATURES.md # Complete feature guide (new) โ”œโ”€โ”€ DEVELOPMENT.md # Development & testing guide (new) โ””โ”€โ”€ CHANGELOG.md # This changelog (new) README.md # Streamlined quick-start guide (updated) ``` ### [1.3.3] - Previous Releases #### ๐Ÿฅ Modular Medicine System - **Added**: Dynamic medicine management system - **Added**: JSON-based medicine configuration (`medicines.json`) - **Added**: Medicine management UI (`Tools` โ†’ `Manage Medicines...`) - **Added**: Configurable medicine properties (colors, doses, names) - **Added**: Automatic UI updates when medicines change - **Added**: Backward compatibility with existing data #### ๐Ÿ’Š Advanced Dose Tracking System - **Added**: Precise timestamp recording for medicine doses - **Added**: Multiple daily dose support for same medicine - **Added**: Comprehensive dose tracking interface in edit windows - **Added**: Quick-dose buttons for common amounts - **Added**: Real-time dose display and feedback - **Added**: Historical dose data persistence in CSV - **Improved**: Dose format parsing with robust error handling ##### Punch Button Redesign - **Moved**: Dose tracking from main input to edit window - **Added**: Individual dose entry fields per medicine - **Added**: "Take [Medicine]" buttons with immediate recording - **Added**: Editable dose display areas with history - **Improved**: User experience with centralized dose management #### ๐Ÿ“Š Enhanced Graph Visualization - **Added**: Medicine dose bar charts with distinct colors - **Added**: Interactive toggle controls for symptoms and medicines - **Added**: Enhanced legend with multi-column layout - **Added**: Average dosage calculations and displays - **Added**: Professional styling with transparency and shadows - **Improved**: Graph layout with dynamic positioning ##### Medicine Dose Plotting - **Added**: Visual representation of daily medication intake - **Added**: Scaled dose display (mg/10) for chart compatibility - **Added**: Color-coded bars for each medicine - **Added**: Semi-transparent rendering to preserve symptom visibility - **Fixed**: Dose calculation logic for complex timestamp formats ##### Legend Enhancements - **Added**: Multi-column legend layout (2 columns) - **Added**: Average dosage information per medicine - **Added**: Tracking status for medicines without current doses - **Added**: Frame, shadow, and transparency effects - **Improved**: Space utilization and readability #### ๐Ÿงช Comprehensive Testing Framework - **Added**: Professional testing infrastructure with pytest - **Added**: 93% code coverage across 112 tests - **Added**: Coverage reporting (HTML, XML, terminal) - **Added**: Pre-commit testing hooks - **Added**: Comprehensive dose calculation testing - **Added**: UI component testing with mocking - **Added**: Medicine plotting and legend testing ##### Test Infrastructure - **Added**: `tests/conftest.py` with shared fixtures - **Added**: Sample data generators for realistic testing - **Added**: Mock loggers and temporary file management - **Added**: Environment variable mocking ##### Pre-commit Testing - **Added**: Automated testing before commits - **Added**: Core functionality validation (3 essential tests) - **Added**: Commit blocking on test failures - **Configured**: `.pre-commit-config.yaml` with testing hooks #### ๐Ÿ—๏ธ Technical Architecture Improvements - **Added**: Modular component architecture - **Added**: MedicineManager and PathologyManager classes - **Added**: Dynamic UI generation based on configuration - **Improved**: Separation of concerns across modules - **Enhanced**: Error handling and logging throughout #### ๐Ÿ“ˆ Data Management Enhancements - **Added**: Automatic data migration and backup system - **Added**: Dynamic CSV column management - **Added**: Robust dose string parsing - **Improved**: Data validation and error handling - **Enhanced**: Backward compatibility preservation #### ๐Ÿ”ง Development Tools & Workflow - **Added**: uv integration for fast package management - **Added**: Comprehensive Makefile with development commands - **Added**: Docker support with multi-platform builds - **Added**: Pre-commit hooks for code quality - **Added**: Ruff for fast Python formatting and linting - **Improved**: Virtual environment management #### ๐Ÿš€ Deployment & Distribution - **Added**: PyInstaller integration for standalone executables - **Added**: Linux desktop integration - **Added**: Automatic file installation and desktop entries - **Added**: Docker containerization support - **Improved**: Build and deployment automation ### Technical Details #### Dependencies - **Runtime**: Python 3.13+, matplotlib, pandas, tkinter, colorlog - **Development**: pytest, pytest-cov, ruff, pre-commit, pyinstaller - **Package Management**: uv (Rust-based, 10-100x faster than pip/Poetry) #### Architecture - **Frontend**: Tkinter-based GUI with dynamic component generation - **Backend**: Pandas for data manipulation, Matplotlib for visualization - **Storage**: CSV-based with JSON configuration files - **Testing**: pytest with comprehensive mocking and coverage #### File Structure ``` src/ # Main application code โ”œโ”€โ”€ main.py # Application entry point โ”œโ”€โ”€ ui_manager.py # User interface management โ”œโ”€โ”€ data_manager.py # CSV operations and data persistence โ”œโ”€โ”€ graph_manager.py # Visualization and plotting โ”œโ”€โ”€ medicine_manager.py # Medicine system management โ””โ”€โ”€ pathology_manager.py # Symptom tracking tests/ # Comprehensive test suite (112 tests, 93% coverage) docs/ # Organized documentation โ”œโ”€โ”€ FEATURES.md # Complete feature documentation โ”œโ”€โ”€ DEVELOPMENT.md # Development and testing guide โ””โ”€โ”€ CHANGELOG.md # This changelog Configuration Files: โ”œโ”€โ”€ medicines.json # Medicine definitions (auto-generated) โ”œโ”€โ”€ pathologies.json # Symptom categories (auto-generated) โ”œโ”€โ”€ pyproject.toml # Project configuration โ””โ”€โ”€ uv.lock # Dependency lock file ``` ### Migration Notes #### From Previous Versions - **Data Compatibility**: All existing CSV data continues to work - **Automatic Migration**: Data structure updates handled automatically - **Backup Creation**: Automatic backups before major changes - **No Data Loss**: Existing functionality preserved during updates #### Configuration Migration - **Medicine System**: Hard-coded medicines converted to JSON configuration - **UI Updates**: Interface automatically adapts to new medicine definitions - **Graph Integration**: Visualization system updated for dynamic medicines ### Future Roadmap #### Planned Features (v2.0) - **Mobile App**: Companion mobile application for dose tracking - **Cloud Sync**: Multi-device data synchronization - **Advanced Analytics**: Machine learning-based trend analysis - **Reminder System**: Intelligent medication reminders - **Doctor Integration**: Healthcare provider report generation #### Platform Expansion - **macOS Support**: Native macOS application - **Windows Support**: Windows executable and installer - **Web Interface**: Browser-based version for universal access #### API Development - **REST API**: External system integration - **Plugin Architecture**: Third-party extension support - **Data Export**: Multiple format support (JSON, XML, etc.) --- ### Contributing This project follows semantic versioning and maintains comprehensive documentation. For development guidelines, see [docs/DEVELOPMENT.md](docs/DEVELOPMENT.md). For feature information, see [docs/FEATURES.md](docs/FEATURES.md). --- *Originally from: CHANGELOG.md* --- ## ๐Ÿ“– Documentation Navigation - [User Guide](USER_GUIDE.md) - Features, shortcuts, and usage - [Developer Guide](DEVELOPER_GUIDE.md) - Development and testing - [API Reference](API_REFERENCE.md) - Technical documentation - [Changelog](CHANGELOG.md) - Version history - [Documentation Index](docs/README.md) - Complete navigation --- *This document was generated by the documentation consolidation system.* *Last updated: 2025-08-05 14:53:36*