Smart Bug Tracker
Professional task management and bug tracking system
Built with Python and PyQt5. Supports Developer and Tester roles with role-specific workflows, sound system, and GitHub integration.
smart-bug-tracker — professional task management and bug tracking system built with Python and PyQt5. Supports Developer and Tester roles with role-specific workflows, sound system, and GitHub integration.
Professional Task Management: Comprehensive desktop application for managing tasks and bugs in software development projects. With separate Developer and Tester modes, it streamlines the entire workflow from bug reporting to task completion.
- Dual-Mode Operation — Developer and Tester roles with tailored workflows
- Single Instance Protection — Prevents multiple application instances with smart focus switching
- Comprehensive Help System — F1 hotkey access with categorized keyboard shortcuts
- GitHub Integration — URL validation, template support, and one-click copy
- Sound System — Toggle sound effects (Ctrl+M) with audio feedback
- Natural Version Sorting — dev → test → alpha → beta → rc → v1.0.0
- Dark Theme — Modern dark UI designed for long working sessions
- Export Capabilities — Statistics and reports in multiple formats
✨ Major New Features
- Enhanced Single Instance Protection — Intelligent launch control with automatic focus
- Comprehensive Help System — Extended keyboard shortcuts, organized help dialog
- Advanced Keyboard Navigation — Task management shortcuts (Ctrl+D, Ctrl+P)
- F1 Hotkey — Instant access to help from any window
🔧 Technical Improvements
- Single Application Pattern — Robust singleton implementation
- Cross-Platform Compatibility — Linux and macOS support
- Improved Error Handling — Better recovery from edge cases
- Enhanced Memory Management — Reduced resource consumption
Global Shortcuts
| Shortcut | Action |
|---|---|
F1 | Open Help Dialog |
Ctrl+Q | Exit Application |
Ctrl+M | Toggle Sound |
Ctrl+O | Open Project |
Ctrl+S | Save Project |
Ctrl+F | Focus Search |
Tab Navigation
| Shortcut | Action |
|---|---|
Ctrl+1 | Tasks Tab |
Ctrl+2 | Bugs Tab |
Ctrl+3 | Statistics Tab |
Task Management
| Shortcut | Action |
|---|---|
Ctrl+N | New Task |
Ctrl+E | Edit Task |
Ctrl+D | Mark Task Done |
Ctrl+P | Mark Task In Progress |
Bug Management
| Shortcut | Action |
|---|---|
Ctrl+Shift+N | New Bug |
Ctrl+Shift+E | Edit Bug |
Ctrl+Shift+D | Mark Bug Done |
Ctrl+Shift+P | Mark Bug In Progress |
Requirements:
- Python 3.8+
- PyQt5
Installation:
git clone https://github.com/aixandrolab/smart-bug-tracker.git cd smart-bug-tracker pip install -r requirements.txt python main.py
First Run:
- Choose Developer or Tester mode
- Create a new project or open existing
.bugtracker.json - Start managing tasks and bugs
Developer Mode:
- Create and manage tasks
- View and update bug reports
- Track development progress
- Assign tasks to team members
- Version management and GitHub integration
Tester Mode:
- Report bugs with detailed reproduction steps
- Upload screenshots and attachments
- Track bug status and resolution
- View task progress and test instructions
- Comment on bugs and tasks
Project Files:
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 # Documentation └── requirements.txt # Python dependencies
Data Structure (.bugtracker.json):
{
"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": { ... },
"bugs": { ... }
}
}
}
Version Sorting: dev → test → alpha → beta → rc → v1.0.0 → v1.0.1 → v1.1.0 → v2.0.0
- Language: Python 3.8+
- GUI Framework: PyQt5
- Platform: Linux / macOS / Windows
- License: MIT
- Dependencies: PyQt5, Python Standard Library
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
Version 1.1.2
- Added: Project editing capabilities for developers
- Added: Automatic version selection on startup
- Added: Sound system with toggle (Ctrl+M)
- Added: Enhanced GitHub integration features
General Questions
- Q: Can I run multiple instances?
- A: No. The application prevents multiple instances and focuses existing windows.
- Q: Can I turn off sounds?
- A: Yes! Press
Ctrl+Mat any time or click the sound button in the header. - Q: What Python version do I need?
- A: Python 3.8 or higher is required.
- Q: Can I run this on a server?
- A: This is a desktop application designed for local use. For team collaboration, share the project file.
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: Where are screenshots stored?
- A: Screenshots are referenced by file path, not embedded. Keep the image files accessible.
- Q: Can I export my data for reporting?
- A: Yes! Use the export options in the Statistics tab or File menu.
By using this software, you agree to the full disclaimer terms.
Software provided "AS IS" without warranty. You assume all risks.
Full legal disclaimer: See DISCLAIMER.md
License: MIT License