This repository is a Bilibili automation tool designed to automatically claim live stream rewards (drops) and complete watching time tasks. It features a dual-mode interface with both a PySide6-based GUI and a CLI entry point. The core functionality involves browser automation via Selenium to extract necessary credentials (cookies) and task information from Bilibili's web interface, followed by API interactions using signed requests (WBI) to claim rewards and report watch time via x25Kn heartbeat protocols. The application includes a notification system supporting multiple services (Gotify, Server酱, WeCom, Apprise) and persists configuration via JSON files and Qt settings. The architecture is modular, separating concerns into distinct modules for API client logic, worker management, GUI components, and utilities.
Deep-Live-Cam is a real-time face swapping desktop application that uses ONNX Runtime with insightface models to swap faces in live webcam feeds or pre-recorded images/videos. The core pipeline involves face detection (RetinaFace), face recognition (ArcFace), and a face swap model (inswapper_128), with optional face enhancement via GFPGAN or GPEN-BFR ONNX models. The application provides a PySide6 GUI for selecting source/target faces, toggling options (mouth mask, many faces, Poisson blending, sharpening, temporal interpolation), and managing camera selection. It supports multiple execution providers: CUDA (NVIDIA), CoreML (Apple Silicon), DirectML (AMD/Intel), OpenVINO (Intel), and CPU fallback. Video processing can run in-memory via FFmpeg pipes (avoiding disk I/O) or via traditional frame extraction to PNG files. The architecture is modular: frame processors (face swapper, enhancers) follow a common interface, and the codebase includes optimizations for Apple Silicon (CoreML subgraph optimization, Pad decomposition, Shape/Gather folding) and CUDA (IO binding, CUDA graphs). The project also includes a benchmark pipeline and unit tests for core components.
FluentYTDL is a Windows desktop application built with PySide6 and qfluentwidgets that provides a modern Fluent Design GUI for downloading videos and audio from YouTube and X (Twitter). It wraps yt-dlp as the core download engine and adds a rich layer of task management, error diagnostics, cookie-based authentication, subtitle handling, metadata embedding, and VR/360 video support. The application features a persistent SQLite task database, structured observability with JSONL event tracing, rule-based error classification, and a self-update mechanism with component version management. It is heavily internationalized (English and Simplified Chinese) and includes a comprehensive test suite covering UI, download pipeline, diagnostics, and observability contracts. Architecturally, the codebase is organized into distinct modules: core (config, dependency, update), auth (cookie sentinel, WebView2 provider), download (executor, workers, staging, quality guard), processing (metadata, subtitles, sponsorblock), diagnostics (rule engine, line collector), observability (events, traces, artifacts), and UI (pages, dialogs, delegates, components). The download pipeline is transactional with staging areas and manifests, ensuring atomicity and recovery. The observability layer is best-effort and never blocks business logic, emitting structured events for debugging and bug bundle export. The code demonstrates strong engineering practices: immutable dataclasses for plans, singleton managers with explicit initialization guards, strategy patterns for subtitle selection, and extensive use of signals for async UI updates. Key reusable components include the container compatibility resolver (deterministic output container decision), BCP-47 language matching with tiered resolution, the quality guard pattern for pre/post-download verification, the transactional staging pattern for file management, and the cookie runfile isolation pattern to prevent yt-dlp from corrupting truth-source cookies. The diagnostics rule engine and observability event system are also well-isolated and could be extracted for other yt-dlp wrapper projects.
Mouser is an open-source, cross-platform (Windows, macOS, Linux) Logitech mouse remapper that serves as a local, telemetry-free alternative to Logitech Options+. It is a desktop application built with PySide6 and Qt Quick (QML) for the user interface, with platform-specific low-level mouse hooks (WH_MOUSE_LL on Windows, CGEventTap on macOS, evdev+uinput on Linux) to intercept and remap button presses and gestures. The core engine orchestrates per-app profile auto-switching, gesture recognition (swipe detection), a radial actions ring, DPI/SmartShift/haptic feedback control via HID++ protocol, and cross-platform shortcut injection. The application also includes an auto-updater, system tray integration, multi-language support (English, Simplified/Traditional Chinese), and a comprehensive test suite. While primarily a desktop application, it contains some research-like elements such as detailed HID++ protocol reverse engineering and a community-driven device catalog.
ProtonUp-Qt is a Linux desktop GUI built with PySide6/Qt6 for installing, updating, and removing Wine/Proton-based compatibility tools (GE-Proton, Proton-tkg, Wine builds, DXVK/VKD3D, SteamTinkerLaunch, Boxtron, Luxtorpeda, etc.) across Steam, Lutris, Heroic, Bottles, and custom launchers. Architecturally it is a client-side Qt application: the main window orchestrates background download/extraction jobs, a dynamic plugin loader (`ctloader.py`) discovers compatibility-tool modules under `resources/ctmods/`, and per-launcher adapters (`steamutil.py`, `lutrisutil.py`, `heroicutil.py`) read/write local game databases and config files. Release metadata is fetched from GitHub/GitLab/Codeberg REST APIs with rate-limit handling and optional user tokens. There is no server or data-processing component; external anti-cheat/compatibility datasets are only consumed to enrich the game-list dialog. The codebase demonstrates a credible plugin architecture, typed domain data in `datastructures.py`, and reusable network/download utilities. Maintenance is active, but the many tool-specific ctmods duplicate logic (fetch/install/extract), translations lag source strings, and the project depends on third-party release APIs and Steam's local formats, which makes some features inherently fragile.
This is a graphical editor for creating and managing bash scripts using a node-based interface. Users can visually construct bash scripts by dragging and dropping nodes representing different bash constructs (commands, flow control, variables, etc.) and connecting them to define execution flow. The application generates the corresponding bash script from the visual representation and allows users to run and view the output directly within the editor. The application follows a modular architecture with clear separation between the graph model (nodes and edges), the view (UI components), and the controller (application logic). It uses PySide6 for the GUI and implements features like project management, syntax highlighting, theme support, and undo/redo functionality. The code demonstrates good software engineering practices with proper encapsulation, reusable components, and attention to user experience details.
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.