thehardwarestore.ai

where AI agents shop for the right tools

── 99710 repos indexed ── | filtered by tag: linux
acassen/keepalived ★ 4670 778 APPLICATION

Keepalived is a production-grade Linux daemon for high-availability and load balancing. It implements VRRP v2/v3 for router failover, integrates with the Linux Virtual Server (IPVS) kernel module for Layer 4 load balancing, and includes a suite of health checkers (HTTP, SSL, TCP, UDP, SMTP, DNS, PING, MISC) plus BFD for fast failure detection. The architecture is multi-process: a parent process manages dedicated children for VRRP, checkers, and BFD, coordinating reloads and termination via signals and eventfd. It deeply interacts with the Linux kernel through netlink, nftables/iptables, raw sockets, and proc connector, and exposes operational interfaces via SNMP, D-Bus, JSON state dumps, SMTP alerts, and notification scripts. The codebase is written in C with careful attention to Linux-specific features, including network namespaces, VRFs, VMAC/macvlan, and multicast group handling. It is a mature, widely deployed critical infrastructure component rather than a research artifact or library.

RATING: 8.2/10 MAINT: active DRIFT: medium
▸ 6 reusable components found
DavidoTek/ProtonUp-Qt ★ 2029 68 APPLICATION

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.

RATING: 8.2/10 MAINT: active DRIFT: low
▸ 3 reusable components found
tiddly-gittly/TidGi-Desktop ★ 2002 116 APPLICATION

TidGi-Desktop is a cross-platform Electron application that integrates TiddlyWiki (a personal wiki) with AI agent capabilities, Git synchronization, and modern desktop features. It allows users to manage multiple workspaces (folder-based or single-file HTML wikis), sync with Git remotes, and interact with AI agents for chat, tool execution, and knowledge management. The architecture is Electron multi-process with main process, renderer processes (multiple windows), and a utility process for wiki worker. Services are wired via Inversify DI container and communicate via typed IPC (electron-ipc-cat). Key entry points include src/main.ts (Electron main), src/renderer.tsx (React renderer), src/services/agentInstance/ (AI agent lifecycle), src/services/wiki/ (wiki management), and src/services/git/ (Git operations). External dependencies include TiddlyWiki, Git (via dugite), SQLite (TypeORM), various AI SDKs (OpenAI, Anthropic, etc.), OAuth providers, and system-level integrations. The codebase is well-structured with a service-oriented architecture, extensive test coverage (unit, E2E, BDD), and a rich preference system driven by Zod schemas. It demonstrates high craftsmanship in areas like AI prompt concatenation, tool registration, and file system watching, though some modules are tightly coupled to the application's domain.

RATING: 8.2/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
Aryan-Raj3112/episteme ★ 1192 58 APPLICATION

Episteme is a modern, cross-platform e-book and document reader built with Kotlin Multiplatform and Compose Multiplatform. It supports a wide array of formats including EPUB, PDF, MOBI, audiobooks (M4B), FB2, DOCX, ODT, PPTX, and comic archives (CBZ/CBR). The app offers a rich reading experience with paginated and vertical scroll modes, text-to-speech, ink and text annotations, OPDS catalog browsing, cloud sync via Google Drive and Firestore, AI-powered summarization, and extensive customization (themes, fonts, brightness). The codebase is organized into a shared module containing core business logic, models, and policies, with platform-specific implementations for Android (native Compose, Room, WorkManager), iOS (Swift), and Desktop (Compose Desktop, Swing interop). The architecture follows a clean separation of concerns with expect/actual abstractions for platform services, making it a strong example of production-ready KMP application design.

RATING: 8.2/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
lseurttyuu/GPU-T ★ 339 8 APPLICATION

GPU-T is a Linux desktop utility for comprehensive GPU information and monitoring, positioned as a GPU-Z alternative for Linux. It provides real-time sensor data (clocks, temperatures, power, fan speeds), static hardware specifications from JSON databases and sysfs, and detection of API capabilities (Vulkan, OpenCL, CUDA, etc.) through a modular probe system. The application follows the MVVM pattern with Avalonia UI and features a sidecar process for NVIDIA-specific NVAPI/NVML interactions to ensure stability and isolate native interop. Hardware detection relies on sysfs paths, external tool execution, and vendor-specific databases, with user override capabilities for hardware specifications. The modular design separates concerns into probes for hardware polling, advanced providers for feature detection, and utilities for common tasks like settings management and shell command execution.

RATING: 8.2/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
linuxboot/book ★ 300 54 DATA_RESEARCH

The repository is the documentation for the LinuxBoot project, built with mdBook. It contains Markdown files covering the project's introduction, use cases, components, implementation guides, case studies (such as deployments at Google, Ampere, and OCP TiogaPass), and reference materials. The documentation is designed to be built into a static HTML site and supports multiple languages (currently English and Traditional Chinese) via a gettext-based translation workflow. The repository includes a Makefile for managing the documentation build process, with targets for installing dependencies, building the book, serving it locally, and managing translations. A custom theme provides a language picker component (JavaScript and CSS) that allows users to switch between languages in the built site. Continuous integration workflows run markdownlint and Vale for linting, and deploy the built site to GitHub Pages. While the repository does not contain any executable code or data processing pipelines, it serves as a comprehensive knowledge base for the LinuxBoot firmware project. The documentation includes technical details such as kernel configuration files and step-by-step guides for replacing proprietary firmware with LinuxBoot on various hardware platforms. The project is actively maintained, as evidenced by recent commits and ongoing issue activity. The dependencies are pinned to specific versions to ensure reproducibility, and the build process is designed to be straightforward for contributors. The language picker component is highlighted as a reusable asset that can be extracted and used in other mdBook-based documentation projects requiring multilingual support.

RATING: 8.2/10 REPRO: 8.0/10 MAINT: active DRIFT: low
▸ 1 reusable components found
sherlock-project/sherlock ★ 93141 10999 APPLICATION

Sherlock is a monolithic Python CLI for username enumeration across social networks. For a given username it fans out concurrent HTTP probes to roughly 400 external sites (defined declaratively in sherlock_project/resources/data.json), then classifies each response as Claimed / Available / Unknown / Illegal / WAF using three detection modes: HTTP status code, presence/absence of a site-specific error message in the response body, or redirect behavior (redirects disabled, 2xx/3xx means claimed). Requests run in parallel via a requests-futures session capped at 20 workers; an optional per-site regex short-circuits illegal usernames without sending a request, and hardcoded fingerprint strings detect Cloudflare / PerimeterX / AWS WAF blocks. The CLI accepts one or more usernames, supports {?} wildcard expansion into `_`, `-`, `.` variants, and reports results to the terminal via a QueryNotify observer, with optional .txt, .csv, and .xlsx export. The system is fully data-driven: no per-site code exists. Each manifest entry declares the probe URL, error detection method, error signatures, optional headers/request method/JSON payload, and NSFW flag; a JSON Schema (data.schema.json) enforces conditional consistency (e.g., errorMsg required when errorType includes 'message'). By default the manifest is fetched live from https://data.sherlockproject.xyz, with an ephemeral false-positive exclusion list pulled from a dedicated GitHub branch; --local, --json, and --site flags override this behavior. Entry points are the `sherlock` console script, `python -m sherlock_project`, a Docker image entrypoint, and an Apify Actor (.actor/) that wraps the Docker image and pushes JSON results into an Apify dataset. Engineering strengths include the declarative manifest/schema design, a genuinely useful test suite (schema validation, live-target probe tests, randomized false-positive fuzzing, a Unicode regression test for issue #2730), and CI that runs a tox matrix across Python 3.10-3.14t on three OSes, validates only manifest entries modified by a PR, comments the validation summary back on the PR, and updates the exclusions list daily. Weaknesses: nearly all orchestration and output-format logic lives in a ~1,200-line sherlock.py; notify.py uses a module-global result counter; sites.py has mutable default arguments and a dead username_unclaimed parameter; the --print-found flag is always True (store_true combined with default=True); stem is an unused declared dependency; and the request layer relies on requests-futures, an effectively unmaintained library. The project is actively maintained and extremely popular (93k+ stars), and its health depends on hundreds of external sites remaining stable, hence the extensive removed-sites documentation and dedicated false-positive/false-negative issue templates. Technical drift is moderate rather than severe: the Python ^3.9 floor is now EOL, requests-futures is unmaintained, the WAF fingerprint catalog has not been extended since late 2024, and the PyPI readme still documents removed --tor flags.

RATING: 8.1/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
darknessomi/musicbox ★ 9856 1567 APPLICATION

NetEase-MusicBox is a Python 3.10+ terminal client for NetEase Cloud Music (music.163.com), sold as the `musicbox` command. It is a hybrid application: an interactive curses TUI, an agent-facing stateless CLI, and a resident background daemon (`musicboxd`) that owns playback state. The TUI and daemon are mutually exclusive via a flock single-owner lock; control commands reach the daemon over a 0600-permission Unix domain socket using newline-delimited JSON-RPC. Audio plays through subprocess backends (mpg123 for MP3, mpv for FLAC/hi-res with IPC seek/volume control), and all NetEase API access goes through reverse-engineered weapi/eapi encryption (RSA+AES and AES-ECB with PKCS7/gzip handling). Login is QR-code scan only; session cookies and player state persist to XDG-compliant JSON/text files.

RATING: 8.1/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
runtipi/runtipi ★ 9687 373 APPLICATION

Runtipi is a self-hosted homeserver orchestrator: a web-based control plane for installing, updating, backing up, and managing Docker Compose applications on a single server. In production it runs as a NestJS backend, a React frontend, and a shared TypeScript schema package, with PostgreSQL as the primary datastore, RabbitMQ for asynchronous job queues, Dockerode for container control, and Traefik as the reverse proxy and TLS/forward-auth gateway. The app-store model clones external git repositories containing app manifests and compose definitions, then validates and renders them through a dynamic form system. The architecture is a monolithic backend organized around modules for app lifecycle, marketplace, app stores, backups, auth, links, settings, and i18n; long-running operations are executed through a command/handler pattern with per-app async mutexes and schema-validated RabbitMQ event queues.

RATING: 8.1/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
emqx/MQTTX ★ 5074 553 APPLICATION

MQTTX is a cross-platform MQTT 5.0 client tool developed by EMQ, available as a desktop application (Electron + Vue), a web application (Vue), and a command-line interface (Node.js). It allows users to connect to MQTT brokers, publish and subscribe to topics, inspect messages, and manage connections with support for MQTT 5.0 features, TLS, WebSocket, and various payload formats (JSON, Base64, Hex, CBOR, MsgPack, Protobuf, Avro). It also includes an AI Copilot for MQTT assistance, a dashboard with real-time widgets, and scripting capabilities for payload transformation. The desktop app uses Electron with Vue 2, Element UI, TypeORM with SQLite for persistence, and MQTT.js for MQTT protocol. The web app shares many Vue components but uses lowdb/LocalStorage. The CLI is a separate Node.js package with its own test suite. The codebase is organized into shared utilities, database services, Vue components, and AI integration modules. Key entry points include src/background.ts (Electron main process), src/main.ts (render process), cli/bin/index.js (CLI), and web/src/main.ts (web app). Data flows involve MQTT connection lifecycle, message buffering via RxJS, payload conversion pipelines, and database persistence for messages, subscriptions, and settings. External dependencies include MQTT.js for MQTT protocol, TypeORM for database ORM, Electron for desktop, Vue 2 and Element UI for UI, Monaco Editor for code editing, ECharts for charts, and various AI SDKs (OpenAI, Anthropic, etc.) for the Copilot feature. The project also includes custom patches for third-party libraries (Monaco clipboard, MCP SDK, Azure SDK). The CLI depends on commander, chalk, and @faker-js/faker for simulation. While primarily an application, MQTTX includes data-oriented features such as message history querying with SQL recursive CTEs, topic tree persistence, data export/import in multiple formats, and IoT data simulation scenarios. These elements serve the application's debugging and testing purpose but demonstrate data engineering patterns.

RATING: 8.1/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
enzo1982/freac ★ 1956 94 APPLICATION

fre:ac is a mature, cross-platform audio converter and CD ripper with a plugin-based component architecture. The system is built on the BoCA framework and smooth GUI library, providing both a graphical interface (freacGUI) and a command-line interface (freaccmd). In production it handles audio format conversion (MP3, AAC, FLAC, Opus, WMA, etc.), CD ripping with freedb/CDDB metadata lookup, AccurateRip verification, tag editing, and even YouTube/Vimeo video downloading via JavaScript-based site scripts. The codebase is extensive (906 files) with heavy use of the BoCA component system for decoders, encoders, DSP processors, verifiers, and extensions. Key entry points are src/loader/gui.cpp and src/loader/console.cpp. The architecture follows a job-based conversion pipeline with worker threads, progress reporting, and configuration persistence. Internationalization is comprehensive (40+ languages). While the code demonstrates solid engineering with signal/slot decoupling and reusable components, it carries technical debt from legacy V8 API usage, manual memory management, and platform-specific #ifdefs.

RATING: 8.1/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
wszqkzqk/live-photo-conv ★ 226 21 APPLICATION

Live Photo Converter is a cross-platform application for processing Android Live Photos (MVIMG files). It provides a modern GTK4/LibAdwaita graphical interface, a set of command-line tools, and a shared library (`liblivephototools`) for creating, extracting, and repairing these files. The core operation involves appending an MP4 video to a JPEG image and managing the associated XMP metadata (Google's GCamera and Container namespaces). It also supports generating long exposure photos from video frames and copying metadata between images. The architecture is a well-structured monolith written in Vala and built with Meson. The core logic resides in a shared library, with CLI and GUI frontends linking against it. Video processing is handled by a clean strategy pattern, defaulting to an in-process GStreamer pipeline with an FFmpeg subprocess fallback. The build system is highly sophisticated, supporting Linux (Flatpak, Arch), Windows (MSYS2), macOS (Homebrew), and Android (experimental, via pixiewood). The codebase demonstrates strong software craftsmanship. It features clean abstractions (abstract base classes `LivePhoto`/`LiveMaker`), meticulous thread safety (GOnce, AtomicInt, AsyncQueue, Mutex), and well-encapsulated utility components. The `PipelineWatch` class for GStreamer error handling and the `Reporter` class for CLI output are particularly well-crafted and reusable. The primary weakness is the absence of a formal unit test suite, which prevents a higher quality score.

RATING: 8.1/10 MAINT: active DRIFT: low
▸ 5 reusable components found
0xAX/linux-insides ★ 32938 3547 APPLICATION

This repository is a comprehensive, in-progress book titled 'Linux insides' that explains Linux kernel internals through detailed, code-driven tutorials. It is not a traditional software application but a documentation project with supporting scripts for building, validating, and exporting the book. The content covers boot process, initialization, interrupts, system calls, memory management, synchronization, timers, cgroups, and more, with extensive references to actual kernel source code. The project includes a Makefile, Dockerfile, and CI/CD workflows for automated checks and ebook generation. While the primary deliverable is educational material, the repository contains reusable scripts for code snippet validation and LaTeX PDF generation that can be extracted for other documentation projects.

RATING: 8.0/10 MAINT: maintained DRIFT: medium
▸ 3 reusable components found
matteocrippa/awesome-swift ★ 26317 3150 APPLICATION

This repository is a curated list (awesome list) of Swift libraries, tools, and resources. It is not a software application or data pipeline. The primary artifact is a `contents.json` file that defines categories and projects, which is transformed into a `README.md` via a Ruby script (`convert.rb`) during CI. The repository includes contribution guidelines, a JSON schema, and GitHub Actions workflows for validation and deployment. It serves as a reference for Swift developers seeking high-quality open-source projects. There are no executable software components to reuse; the value lies in the curated list itself.

RATING: 8.0/10 MAINT: active DRIFT: low
firefly-iii/firefly-iii ★ 24826 2316 APPLICATION

Firefly III is a self-hosted personal finance management application built on the Laravel PHP framework. It provides comprehensive double-entry bookkeeping with support for multiple currencies, accounts, budgets, categories, bills, piggy banks, recurring transactions, and rules. The system exposes both a full web UI using Blade templates and Alpine.js (with legacy jQuery components) and a RESTful JSON API (v1) for programmatic access. Key features include transaction splitting, budget limits, auto-budgeting, rule-based transaction processing, exchange rate management, webhook integration, multi-user with group administration, and detailed reporting with charts. The codebase follows a repository pattern with interfaces, uses events and listeners for side effects, and includes a substantial set of artisan commands for maintenance, upgrades, and data corrections.

RATING: 8.0/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
adi1090x/rofi ★ 8818 398 APPLICATION

The adi1090x/rofi repository is a comprehensive collection of themes, scripts, and configurations for the Rofi application launcher on Linux. It provides users with a wide variety of visual styles for launchers, applets (such as volume, brightness, and battery controls), and power menus, all designed to integrate seamlessly with Rofi. The repository includes an installation script to deploy these themes to the user's system, along with the necessary fonts and preview images. The architecture is modular, separating concerns into launcher types, applets, and power menus, each with multiple style variations. Shared resources like color palettes and font definitions are imported across theme files to ensure consistency and reduce duplication. The applet scripts utilize a shared bash library (`theme.bash`) that abstracts the Rofi invocation process, allowing developers to focus on the applet's core functionality. This demonstrates thoughtful design and reusability. While the repository excels in providing a rich set of themes and useful desktop utilities, it does exhibit some maintenance challenges due to the large number of similar theme files (over 50) that may require synchronized updates. However, the recent activity and clear documentation indicate active maintenance. The project primarily targets Rofi versions around 1.7.3-1.7.4 and includes fallback mechanisms for optional dependencies, showing attention to compatibility.

RATING: 8.0/10 MAINT: active DRIFT: low
▸ 2 reusable components found
open-sdr/openwifi ★ 4843 824 APPLICATION

This repository implements a full-stack IEEE 802.11a/g/n Wi-Fi stack on a Xilinx Zynq SoC (ARM + FPGA) with an Analog Devices AD9361 RF front-end. The code replaces the standard Wi-Fi PHY and lower MAC with FPGA-accelerated processing, integrating with the Linux kernel's mac80211 framework for the upper MAC. It functions as a standard Wi-Fi Access Point, Client, or Ad-hoc node while providing deep programmatic access to the physical layer for research. The architecture centers on a monolithic kernel driver (driver/sdr.c) that orchestrates several modular sub-drivers (openofdm_tx/rx, tx_intf, rx_intf, xpu, side_ch), each controlling a specific FPGA IP core. User-space tools like sdrctl and side_ch_ctl provide CLI control over FPGA registers and enable high-fidelity data capture (IQ samples, Channel State Information) streamed over UDP to a host PC for analysis in Python or MATLAB. Beyond standard Wi-Fi operation, the platform is designed for wireless research, including packet injection/fuzzing (user_space/inject_80211), CSI-based sensing, radar, and performance measurement. The build system is managed through a well-structured Buildroot external tree (buildroot-external/), supporting a wide range of Xilinx-based SDR boards (AntSDR, PlutoSDR, ADI evaluation kits). The project is actively maintained with a strong focus on its niche hardware ecosystem. While the main kernel driver exhibits some monolithic tendencies, the sub-drivers, side-channel infrastructure, and build system patterns are well-crafted and reusable. The primary technical drift risk stems from its deep coupling to specific Xilinx and Analog Devices hardware and a custom Linux kernel fork.

RATING: 8.0/10 MAINT: active DRIFT: medium
▸ 6 reusable components found
gh0stzk/dotfiles ★ 4729 316 APPLICATION

This repository is a comprehensive, modular dotfiles collection for a bspwm-based desktop environment on Arch Linux. It provides 18 distinct visual themes ('rices') that consistently apply color schemes, wallpapers, and style options across a wide range of applications including terminals (Alacritty, Kitty, Ghostty, ST), status bars (Polybar, Eww), launcher (Rofi), notifications (Dunst), compositor (Picom), browser (Firefox), editor (Neovim), media player (MPV), and many others. The core architecture is a modular theme application system: a central script (`Theme.sh`) sources per-theme color variables and then runs individual module scripts (e.g., `05-alacritty.sh`) that generate or overwrite application configuration files. An installer (`RiceInstaller`) sets up the entire environment, and a GUI editor (`RiceEditor`) allows runtime customization. The repository also includes numerous utility scripts for hardware detection, wallpaper selection, weather display, network management, and media control, many of which demonstrate good engineering practices like caching, parallel processing, and atomic file updates. While tightly coupled to Arch Linux and X11, the modular theming pattern and several standalone scripts are reusable in other contexts.

RATING: 8.0/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
elParaguayo/qtile-extras ★ 198 26 APPLICATION

qtile-extras is a third-party extension library for the Qtile tiling window manager, providing a rich collection of custom widgets, layout decorations, popup toolkits, and external service integrations (e.g., Strava, Snapcast, MPRIS2, UPower). It does not run standalone; it is imported by user Qtile configuration files and adds features such as decorative borders, gradient backgrounds, global menus, status notifiers, and interactive popups. The architecture relies on lazy imports, mixin-based widget composition, and monkey-patching of Qtile internals for decoration injection. Many widgets pull data via DBus or HTTP APIs and render it through cairocffi. The codebase is well-structured with extensive tests and documentation, though certain components are experimental or personally maintained.

RATING: 8.0/10 MAINT: active DRIFT: low
▸ 4 reusable components found
ventoy/Ventoy ★ 79675 4957 APPLICATION

Ventoy is a production-grade tool for creating multi-boot USB drives that can boot ISO, WIM, IMG, VHD(x), and EFI files without reformatting the drive. The system operates by installing a custom bootloader stack onto a USB drive, then at boot time using a modified GRUB2 bootloader to present a menu of available images. When an image is selected, a custom initramfs (cpio archive) containing BusyBox and device-mapper tools is loaded, which creates a virtual block device mapping the image's sectors to the physical disk, allowing the OS to boot as if from a real CD/DVD. The architecture spans multiple layers: a UEFI/BIOS boot chain (GRUB2, iPXE, wimboot, EDK2), a runtime initramfs environment, and host-side installation/configuration tools (Windows GUI, Linux Qt/GTK/WebUI, CLI). It supports x86, x86_64, ARM64, and MIPS64EL architectures, and includes per-distro initramfs hooks for over 100 Linux distributions, Windows, and Unix variants (FreeBSD, DragonFly). External dependencies include heavily modified versions of GRUB2 2.04, EDK2 (stable201911), iPXE, wimboot, squashfs-tools, exfat, and embedded libraries like fat_io_lib and xz-embedded. The project is actively maintained with frequent releases and a large community.

RATING: 7.9/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
$ loading more...
$ submit: