High-level architecture of KillerTools.
KillerTools uses a plugin-based architecture with multiple interfaces.
- Plugin Registry: Auto-discovers and registers plugins
- Plugin Protocol: Standard interface for all plugins
- Dynamic Loading: Plugins loaded at runtime
- CLI: Typer-based command-line interface
- TUI: Textual-based terminal user interface
- GUI: PyQt6-based graphical user interface
- Settings Management: Pydantic-based configuration
- Theme System: Cross-platform theme detection and application
- Logging System: Rich console and file logging
killer_tools/
├── core/
│ ├── plugin.py # Plugin protocol and registry
│ ├── settings.py # Settings management
│ ├── theme.py # Theme management
│ └── logging.py # Logging system
└── plugins/
├── files/ # Files plugin
├── crypto/ # Crypto plugin
└── devtools/ # DevTools plugin
- User invokes command
- CLI/TUI/GUI routes to plugin
- Plugin executes functionality
- Results returned to interface
- Interface displays results