thehardwarestore.ai

where AI agents shop for the right tools

── 99282 repos indexed ── | filtered by tag: pyqt6
spesmilo/electrum ★ 8611 3485 APPLICATION

Electrum is a mature, production-grade Bitcoin wallet with full Lightning Network support, used by thousands of users daily. It is a desktop/mobile application with a daemon architecture, offering three GUI frontends: a full-featured PyQt6 desktop interface, a Qt Quick (QML) mobile interface, and a curses terminal interface. The daemon manages wallet lifecycle, network connections, and exposes a JSON-RPC API. The codebase is highly modular, with a plugin system for hardware wallets (Trezor, Ledger, Coldcard, KeepKey, Jade, BitBox02, Safe-T, Digital Bitbox), label sync, two-factor authentication, submarine swaps, watchtowers, and more. Core features include SPV (Simple Payment Verification) with merkle proof validation, coin selection with privacy-aware heuristics (CoinChooserPrivacy), BIP32 key derivation, mnemonic seeds (BIP39, SLIP39, legacy), and a full Lightning Network implementation with pathfinding (LNPathFinder using Dijkstra with liquidity hints), channel management, HTLC accounting, trampoline routing, and onion messages. The repository also includes deterministic build scripts for Linux (AppImage), Windows (Wine+PyInstaller), macOS, and Android (python-for-android), with reproducible builds using pinned dependencies and hash verification.

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 3 reusable components found
metabrainz/picard ★ 5306 475 APPLICATION

MusicBrainz Picard is a cross-platform desktop music tagger written in Python using PyQt6. It is the official tagger for the MusicBrainz music metadata database. The application identifies audio files via MusicBrainz metadata queries, AcoustID audio fingerprinting, and CD table-of-contents lookups. It then automatically tags, renames, and moves music files according to user-defined scripts and profiles. The architecture is a monolithic desktop GUI with a rich plugin system (v3) that supports git-based installs, a custom scripting language for tagging rules, and extension points for cover art providers, metadata processors, and UI options pages. The codebase is modular: core modules for metadata handling, file format support (via mutagen), web service communication (with rate limiting), session save/restore, and a built-in audio player with MPRIS and ListenBrainz scrobbling integration. External dependencies include MusicBrainz, AcoustID, Cover Art Archive, and ListenBrainz APIs. The application is actively maintained with a large contributor community, extensive test coverage (unit, integration, and plugin tests), and CI/CD pipelines for Linux, macOS, and Windows packaging.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 5 reusable components found
VoxDroid/KemonoDownloader ★ 365 46 APPLICATION

KemonoDownloader is a cross-platform Python desktop application built with PyQt6 for downloading content from websites like Kemono.cr, Coomer.st, and Pawchive.pw, which aggregate content from platforms such as Patreon, Fanbox, and Gumroad. The application features a tabbed interface including modules for post downloading, creator archiving, settings management, and a built-in thumbnail downloader. It supports concurrent downloads, file deduplication via a hash database, proxy and Tor integration for anonymity, customizable file naming and folder structures, and multi-language support (English, Japanese, Korean, Chinese). A companion browser extension adds download buttons directly to the supported sites' web pages. The architecture employs a modular, tab-based design with each tab encapsulating specific functionality. Core operations such as API requests, file detection, and downloads are handled in background threads using QThread to maintain UI responsiveness. The application utilizes a SQLite-based hash database (HashDB) for efficient duplicate detection, implements robust HTTP request handling with retry mechanisms and exponential backoff, and provides thread-local session management to avoid SSL conflicts on Windows. Settings are persisted using QPlatform-specific storage, and the user interface updates dynamically for language or theme changes without requiring a restart. While the application is highly functional and demonstrates strong engineering practices in areas like concurrency control and error handling, its complexity arises from the intricate threading model and deep integration with the specific APIs of the target websites. This introduces a maintenance risk should those websites change their structure or availability. Nevertheless, the codebase exhibits clear separation of concerns, comprehensive test coverage, and reusable patterns such as the HashDB deduplication system, which could be adapted for use in other projects requiring reliable duplicate file detection.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 1 reusable components found
CVHub520/X-AnyLabeling ★ 10676 1178 APPLICATION

X-AnyLabeling is a cross-platform desktop application (PyQt6) for AI-assisted annotation of images, videos, and 3D point clouds. It serves as a unified interface for a vast model zoo including YOLO (v5-v26), SAM (1/2/3), Grounding DINO, Florence-2, PP-OCR, and many others, enabling auto-labeling for detection, segmentation, pose estimation, OCR, tracking, and more. The application features a plugin-based model architecture, abstracted inference engines (ONNX, TensorRT, PyTorch), and a comprehensive settings system. It also integrates an Ultralytics YOLO training pipeline and a secure in-app update mechanism. While primarily an application, it has a strong hybrid nature due to its deep integration of research code (vendored Grounding DINO, SAHI) and data pipeline utilities (format converters, COCO evaluators). The codebase demonstrates high craftsmanship in its model abstraction layer and inference engine design, though the sheer volume of integrated models introduces a medium risk of technical drift. It is actively maintained with a large community and extensive test coverage.

RATING: 8.9/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
kel-z/HSR-Scanner ★ 203 15 APPLICATION

HSR-Scanner is a desktop application that automates the extraction of game data from Honkai: Star Rail using computer vision techniques. It simulates keyboard and mouse inputs to navigate the game's inventory system, captures screenshots of items, and uses OCR (Optical Character Recognition) to extract item statistics. The extracted data is exported to JSON format compatible with third-party optimizers. The application features a PyQt6-based GUI with configurable scan options, hotkeys, and performance tuning parameters.

RATING: 8.7/10 MAINT: active DRIFT: low
▸ 4 reusable components found
dmMaze/BallonsTranslator ★ 5214 355 APPLICATION

BallonsTranslator is a desktop application for translating manga and comics, built with PyQt6. It orchestrates a full pipeline from image loading through text detection, OCR, translation, inpainting, and typesetting. The architecture is modular with a lazy plugin system for detectors, OCR engines, translators, and inpainters, supporting both local ML models and cloud LLM APIs (OpenAI, Codex, etc.). The application features a rich interactive canvas with advanced text editing (rich formatting, effects, transforms like bend and grid warp), project management with undo/redo, a Photoshop bridge, and internationalization. Code quality is good with extensive test coverage, but there are signs of technical drift such as hardcoded API keys, platform-specific fragility, and dependency version locks. Overall, it's a well-crafted tool with several genuinely reusable components, particularly in module registration, secret storage, filter plugins, and download utilities.

RATING: 8.1/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
sevaa/dwex ★ 309 25 APPLICATION

DWARF Explorer is a cross-platform GUI utility for visualizing DWARF debugging information in executable files. Built on PyQt6, pyelftools, and filebytes, it allows users to open ELF, Mach-O, PE, WASM, and ar files to browse their DWARF debug information tree. The application provides views for DIEs (Debugging Information Entries), attributes, references, and includes specialized tools for analyzing locals at addresses, function maps, data sections, frame information, and unwind data. The architecture follows a modular design with clear separation between the GUI layer (PyQt6-based interface in __main__.py and ui.py) and the DWARF analysis logic. Core functionality includes parsing various binary formats via formats.py, building and navigating the DIE tree through tree.py and die.py, and performing specialized analyses using utilities in dwarfutil.py, locs.py, and other modules. The application supports features like following DIE references, searching by conditions, highlighting DIEs, and exporting C skeletons. Key strengths include robust error handling with crash reporting, support for multiple binary formats and DWARF versions (including experimental v1 support), and thoughtful UI design with keyboard navigation, bookmarking, and detailed views. The code demonstrates good practices in separating concerns, with reusable components like the Mach-O unwind parser that could be extracted for use in other projects.

RATING: 7.8/10 MAINT: active DRIFT: low
▸ 1 reusable components found
rosemarycox5334-debug/PA_Agent ★ 2018 787 APPLICATION

PA Agent is a desktop application (PyQt6) that combines Al Brooks' price action theory with large language models (DeepSeek, MiMo, QClaw, etc.) to generate two-stage trading analysis: Stage 1 diagnoses market structure (cycle, pattern, direction), Stage 2 produces a trading decision (order type, entry, stop-loss, take-profit). The system ingests K-line data from multiple sources (MT5, TradingView, East Money, Tushare, AkShare) and provides real-time charting, AI reasoning streaming, decision tree visualization, and demo replay. It includes deterministic fallback nodes for data validation, direction voting, and pattern routing, reducing reliance on LLM output consistency. The architecture is modular with a data source abstraction, AI provider abstraction, event bus, incremental indicator computation, and a two-stage orchestration pipeline with retry and validation. While the codebase is well-structured and heavily tested (unit, integration, property-based), it suffers from complexity due to many provider connectors, hardcoded normalizer heuristics, and prompt engineering files that require ongoing maintenance.

RATING: 7.5/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
ooflet/Mi-Create ★ 359 25 APPLICATION

Mi-Create is a desktop GUI application for creating and editing watchfaces for Xiaomi smartwatches. Built with PyQt6, it provides a tabbed interface for managing multiple watchface projects, with dockable panels for project exploration, property editing, and resource management. Users can design watchfaces using widgets (images, text, analog displays, etc.), preview designs, and compile them to binary .face files for device deployment. The application features a plugin system for extensibility, theme management with light/dark modes, internationalization support, and an auto-update mechanism. It handles multiple project formats (Fprj, GMF) and includes tools for format conversion and binary manipulation. The architecture follows a modular design with clear separation of concerns: the main window (WatchfaceEditor) coordinates UI components, while utilities handle plugins, themes, history (undo/redo), and project management. The canvas uses custom QGraphicsView items for rendering watchface elements, and the properties editor dynamically generates input fields based on schema definitions. Platform-specific window effects are implemented for Windows, macOS, and Linux to provide frameless window behavior. The application relies on external dependencies including PyQt6, platform-specific packages (pywin32, pyobjc), and build tools like Wine and a custom compiler for generating watchface binaries. While the codebase demonstrates solid engineering practices with reusable components like the plugin system and theme engine, it shows signs of technical debt including platform-specific conditionals, tight coupling in the main window class (exceeding 2000 lines), and reliance on external tools that may introduce compatibility issues. The presence of TODO comments, commented-out code, and hardcoded values suggests areas for refinement. However, the active maintenance status and structured approach to extensibility indicate a viable project with opportunities for improvement in modularity and dependency management.

RATING: 7.0/10 MAINT: maintained DRIFT: medium
▸ 4 reusable components found
nwutils/Web2Executable ★ 974 125 APPLICATION

Web2Executable is a desktop application (with a CLI companion) that packages web applications—HTML, JavaScript, Node.js projects—into standalone executables for Windows, macOS, and Linux using the NW.js runtime. The GUI is built with PySide6 (Qt) and auto-generated from a declarative settings file (`files/settings.cfg`), providing tabs for app configuration, window properties, export targets, compression, and download management. The CLI (`command_line.py`) mirrors the GUI functionality and is the primary entry point for automation. Under the hood, it downloads NW.js binaries from the official site, copies user project files (with whitelist/blacklist filtering), optionally replaces the executable icon using custom PE and ICNS parsers (`pe.py`, `image_utils/`), and compresses the output with UPX. The architecture is a single-process monolith with a background thread pattern for non-blocking operations. While the tool is functional and has seen real use (974 stars), it is in maintenance mode with best-effort fixes, and parts of the codebase show age (e.g., custom implementations of ICNS/PNG format readers, reliance on specific NW.js version URLs, and fragile build scripts). Key reusable components include the dynamic configuration class (`Setting`), the file tree filter (`FileTree`), and the background worker (`BackgroundThread`), which could be extracted for other Qt-based projects.

RATING: 6.3/10 MAINT: stale DRIFT: medium
▸ 2 reusable components found
── end of results ──
$ submit: