Skip to content

aixandrolab/smart-bug-tracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🐛 Smart Bug Tracker

Version 1.1.3
Professional task management and bug tracking system

Python PyQt5 License Platform


🎯 What's New in Version 1.1.3

Major New Features

Enhanced Single Instance Protection

  • Intelligent Launch Control: Prevents running multiple application instances
  • Automatic Focus: New instances automatically bring existing window to front
  • Smart Detection: Cross-platform compatibility with multiple fallback methods
  • User-Friendly Messages: Clear notifications when application is already running

Comprehensive Help System

  • Extended Keyboard Shortcuts: Dozens of new keyboard shortcuts for efficiency
  • Detailed Help Dialog: Organized, searchable help with categorized shortcuts
  • Role-Specific Help: Different help content for Developer and Tester modes
  • F1 Hotkey: Instant access to help from any window

Advanced Keyboard Navigation

  • Task Management Shortcuts: Quick task status changes (Ctrl+D, Ctrl+P)
  • Bug Tracking Shortcuts: Fast bug status updates (Ctrl+Shift+D, Ctrl+Shift+P)
  • Tab Navigation: Quick tab switching (Ctrl+1, Ctrl+2, Ctrl+3)
  • Search Focus: Instant search field access (Ctrl+F, Ctrl+Shift+F)

🔧 Technical Improvements

Application Architecture

  • Single Application Pattern: Robust singleton implementation
  • Cross-Platform Compatibility: Works seamlessly on Linux, and macOS
  • Improved Error Handling: Better recovery from edge cases
  • Enhanced Memory Management: Reduced resource consumption

Code Quality

  • Refactored Core Classes: Cleaner, more maintainable codebase
  • Better Separation of Concerns: Improved modular architecture
  • Type Hinting: Enhanced code documentation and IDE support
  • Performance Optimizations: Faster UI rendering and data loading

🎨 User Experience Enhancements

Visual Improvements

  • Enhanced Status Bar: More informative status messages
  • Improved Tooltips: Better explanations for all UI elements
  • Consistent Iconography: Unified visual language across all windows
  • Better Error Visualization: Clearer error states and warnings

Workflow Optimizations

  • Smart Default Focus: Application starts with optimal focus for each role
  • Reduced Clicks: Streamlined common operations
  • Better Feedback: Audio and visual feedback for all actions
  • Intuitive Navigation: Natural flow between different application parts

🛡️ Security & Stability

Data Protection

  • Atomic File Operations: Safe saving even during crashes
  • Backup Validation: Automatic validation of exported data
  • Corruption Prevention: Better handling of malformed project files
  • Recovery Options: Improved recovery from unexpected shutdowns

Application Stability

  • Memory Leak Fixes: Reduced memory consumption over time
  • Crash Prevention: Better handling of edge cases and invalid inputs
  • Resource Management: Proper cleanup of all system resources
  • Thread Safety: Safe concurrent operations where applicable

📱 Platform-Specific Improvements

Windows Enhancements

  • Taskbar Integration: Proper taskbar grouping and window management
  • DPI Awareness: Better support for high-DPI displays

Linux Improvements

  • Desktop Environment: Support for GNOME, KDE, and other DEs
  • File Dialog Integration: Native file dialogs for each environment
  • Theme Compatibility: Better blending with system themes
  • Package Manager: Improved support for various Linux distributions

macOS Optimizations

  • Menu Bar Integration: Proper macOS menu bar behavior
  • Gesture Support: Basic gesture compatibility
  • Window Management: Standard macOS window controls
  • File System: Better integration with macOS file system

🔌 Integration Enhancements

GitHub Integration

  • URL Validation: Automatic validation of GitHub repository URLs
  • Template Support: Quick GitHub URL templates
  • Enhanced Copy Function: One-click copy of GitHub URLs
  • Better Browser Integration: Improved opening of repository links

File System Integration

  • Recent Projects: Quick access to recently opened projects
  • File Association: Better integration with .bugtracker.json files
  • Drag & Drop: Basic support for dragging project files
  • Path Completion: Smart path suggestions in file dialogs

📊 Statistics & Analytics

Enhanced Reporting

  • Export Formats: More flexible export options
  • Data Visualization: Better statistical displays
  • Trend Analysis: Basic trend tracking over time
  • Custom Reports: More customizable report generation

Performance Metrics

  • Load Time Optimization: Faster application startup
  • Memory Usage: Better memory utilization statistics
  • Response Times: Improved UI responsiveness
  • File Operations: Faster project loading and saving

🎮 Accessibility Features

Keyboard Accessibility

  • Full Keyboard Navigation: Complete application control via keyboard
  • Screen Reader Support: Better compatibility with screen readers
  • High Contrast: Improved visibility in various lighting conditions
  • Focus Indicators: Clear visual indicators for keyboard focus

Customization Options

  • Shortcut Customization: Basic support for custom keyboard shortcuts
  • UI Scaling: Better support for different display sizes
  • Font Preferences: Basic font size adjustments
  • Color Scheme: Minor theme customization options

🔄 Backward Compatibility

Data Migration

  • Version Upgrades: Smooth migration from previous versions
  • File Format: Backward compatible project file format
  • Settings Preservation: User settings maintained during upgrades
  • Import Tools: Basic tools for importing data from older versions

API Stability

  • Stable Interfaces: Consistent programming interfaces
  • Deprecation Warnings: Clear warnings for deprecated features
  • Migration Guides: Documentation for upgrading from older versions
  • Compatibility Layers: Support for older project file formats

(Note: The complete README continues from this point with the rest of the content you previously provided. I've only updated the "What's New in Version 1.1.3" section as requested.)

Q: Can I turn off sounds?
A: Yes! Press Ctrl+M at any time or click the sound button in the header.

Technical Questions

Q: What Python version do I need?
A: Python 3.8 or higher is required.

Q: Can I run this on my server?
A: This is a desktop application designed for local use. For team collaboration, you'll need to share the project file.

Q: How do I update the application?
A: Pull the latest changes from GitHub and reinstall dependencies if needed.

Q: Where are screenshots stored?
A: Screenshots are referenced by file path, not embedded. Keep the image files accessible.

Usage Questions

Q: How do I assign tasks to team members?
A: Use the "Assigned To" field when creating or editing tasks.

Q: Can I change bug priorities after creation?
A: Yes! Edit any bug to change its priority.

Q: What's the difference between "Won't Fix" and "Invalid"?
A: "Won't Fix" means it's a bug but won't be addressed. "Invalid" means it's not actually a bug.

Q: How do I track which bugs belong to which tasks?
A: When reporting bugs, you can associate them with tasks. Use the task filter to see all related bugs.

Q: Can I export my data for reporting?
A: Yes! Use the export options in the Statistics tab or File menu.


🏗️ Technical Information

Project Structure

smart-bug-tracker/
├── core/                    # Core application logic
│   ├── models/             # Data models (Bug, Task, Project)
│   ├── managers/           # Business logic managers
│   ├── ui/                 # User interface components
│   │   ├── windows/        # Main application windows
│   │   └── dialogs/        # Modal dialog windows
│   └── utils/              # Utility functions
├── core/data/sounds/       # Sound effects
├── main.py                 # Application entry point
├── README.md               # This file
└── requirements.txt        # Python dependencies

Data Structure

Projects are saved as .bugtracker.json files with this structure:

{
  "meta": {
    "name": "Project Name",
    "description": "Project description",
    "author": "Your Name",
    "created_at": "2025-01-01T12:00:00",
    "github_url": "https://github.com/username/repo",
    "versions": ["v1.0.0", "v1.1.0"],
    "developers": ["dev1", "dev2"],
    "testers": ["tester1", "tester2"]
  },
  "versions": {
    "v1.0.0": {
      "tasks": {
        "TASK-ABC123": {
          "id": "TASK-ABC123",
          "title": "Task Title",
          "description": "Task description",
          "priority": "high",
          "status": "todo",
          "created_at": "2025-11-01T12:00:00",
          "version": "v1.0.0",
          "test_instructions": "Instructions...",
          "assigned_to": "Developer Name",
          "bug_ids": ["BUG-DEF456"]
        }
      },
      "bugs": {
        "BUG-DEF456": {
          "id": "BUG-DEF456",
          "title": "Bug Title",
          "description": "Bug description",
          "priority": "critical",
          "status": "open",
          "created_at": "2025-11-01T12:00:00",
          "task_id": "TASK-ABC123",
          "steps_to_reproduce": "1. Step one...",
          "expected_result": "Should happen...",
          "actual_result": "Actually happens...",
          "screenshot_path": "/path/to/screenshot.png",
          "author": "Tester Name",
          "assigned_to": "Developer Name",
          "comments": []
        }
      }
    }
  }
}

Version Sorting Algorithm

Versions are sorted using natural sorting:

  1. devtestalphabetarcv1.0.0v1.0.1v1.1.0v2.0.0
  2. Numerical components are compared numerically, not lexicographically

File Management

  • Project Files: Saved wherever you choose during creation
  • Sound Files: Located in core/data/sounds/
  • Temporary Data: No temporary files created
  • Backup Files: Create via export functionality

Dependencies

Core dependencies (see requirements.txt for complete list):

  • PyQt5: GUI framework
  • Python 3.8+: Runtime environment

🆘 Support

Getting Help

  • Check this README - Most questions are answered here
  • Keyboard shortcuts - Most actions have shortcuts for efficiency
  • In-app help - Press F1 in any window for shortcuts reference
  • Tooltips - Hover over buttons and controls for descriptions

Reporting Issues

Found a bug in the bug tracker? Report it:

  1. Check if it's already known in GitHub Issues
  2. Provide clear steps to reproduce
  3. Include your OS and Python version
  4. Share error messages or screenshots if applicable
  5. Create an issue on GitHub Issues

Feature Requests

Have an idea to improve Smart Bug Tracker?

  1. Check if it's already planned or requested
  2. Explain the use case clearly
  3. Suggest how it should work
  4. Submit on GitHub Issues

Community Support

  • GitHub Discussions: Coming soon for community support
  • Documentation: This README is the primary documentation
  • Examples: Check the repository for example project files

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

MIT License Summary:

  • ✅ Can use commercially
  • ✅ Can modify and distribute
  • ✅ Can place warranty
  • ✅ Must include original license
  • ❌ No liability
  • ❌ No warranty

🙏 Acknowledgments

  • PyQt5 Team for the excellent GUI framework
  • Python Software Foundation for the programming language
  • All Contributors who have submitted issues and suggestions
  • Open Source Community for inspiration and best practices
  • Testers and Users for feedback and bug reports

🔄 Changelog

Version 1.1.3 (Current Release - 2025)

  • Added: Single instance protection with smart focus switching
  • Added: Comprehensive help system with keyboard shortcuts reference
  • Added: Dozens of new keyboard shortcuts for improved productivity
  • Added: F1 help hotkey in all application windows
  • Enhanced: Cross-platform compatibility and stability
  • Improved: Application architecture and code maintainability
  • Optimized: Memory management and resource usage
  • Fixed: Various bugs and edge cases for better reliability

Version 1.1.2

  • Added: Project editing capabilities for developers
  • Added: Automatic version selection on startup
  • Added: Smart version name suggestions
  • Added: Natural version sorting
  • Added: Role-specific version creation workflows
  • Added: Sound system with toggle (Ctrl+M)
  • Added: Enhanced GitHub integration features
  • Improved: UI consistency across modes
  • Improved: Error messages and user guidance
  • Fixed: Various bug fixes and stability improvements

Version 1.1.1

  • Added enhanced keyboard shortcuts
  • Improved dark theme implementation
  • Added comprehensive help system
  • Enhanced export capabilities

Version 1.1.0

  • Initial public release with core functionality
  • Developer and Tester modes
  • Basic task and bug management
  • Statistics dashboard

🤝 Contributing

We welcome contributions! Here's how you can help:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Areas Needing Contributions:

  • 📚 Documentation improvements
  • 🎨 UI/UX enhancements
  • 🐛 Bug fixes
  • 🧪 Test coverage
  • 🔌 Plugin system (future)

If you find this useful, please star the repository!
🐛 Found a bug? Report it to help improve the tool.
🔄 Have suggestions? We'd love to hear your feedback.
👨‍💻 Want to contribute? Check the Issues tab for beginner-friendly tasks.


Happy Developing and Testing! 🚀✨

About

Smart Bug Tracker is a comprehensive desktop application built with Python and PyQt5 that enables efficient bug tracking, test management, and project organization. It supports role-based workflows for both developers and testers within a version-controlled environment.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages