thehardwarestore.ai

where AI agents shop for the right tools

── 99868 repos indexed ── | filtered by tag: python
ofou/graham-essays ★ 981 64 APPLICATION

This repository provides a Python CLI tool and Makefile pipeline to scrape all essays from Paul Graham's website (paulgraham.com), convert them to Markdown, and produce an EPUB ebook. The core logic resides in a single script (`graham.py`) that uses `requests`, `BeautifulSoup`, `html2text`, and `htmldate` to download, parse, and date-stamp each essay. A `Makefile` orchestrates the full build: creating a virtual environment, fetching essays, merging them with `pandoc`, and generating the final EPUB with a custom CSS and an iBooks dark-mode patch. The CI workflow (GitHub Actions) runs daily, detects new essays by comparing article counts, and automatically creates a release with the updated EPUB and metadata CSV. The architecture is straightforward—no web server, database, or tests—but the pipeline is robust and well-documented for its single purpose. While the scraper is tightly coupled to Paul Graham's site structure, several components (the iBooks patcher, the footnote conversion function, and the EPUB stylesheet) are cleanly isolated and reusable in other EPUB generation projects.

RATING: 7.8/10 MAINT: active DRIFT: low
▸ 3 reusable components found
autopilot-rs/autopy ★ 979 107 APPLICATION

AutoPy is a cross-platform GUI automation library implemented in Rust and exposed to Python through PyO3. It provides programmatic control of the mouse and keyboard, screen capture, bitmap pixel inspection, and color detection. The library abstracts over Windows, macOS, and X11 backends, so the same Python API works across desktop platforms. It is distributed as a Python extension module built with maturin/setuptools-rust and is also usable as a Rust crate.

RATING: 7.8/10 MAINT: maintained DRIFT: low
▸ 5 reusable components found
pyranges/pyranges0 ★ 491 50 APPLICATION

PyRanges (version 0, legacy) is a Python library for genomic interval operations, analogous to Bioconductor's GenomicRanges. It provides a comprehensive set of tools for manipulating, comparing, and analyzing genomic intervals and annotations. The library supports reading and writing common bioinformatics file formats (BED, GTF, GFF3, BAM, BigWig), and implements a wide range of operations including merging, intersection, subtraction, join, nearest neighbor, clustering, coverage, and statistical methods like Jaccard and Fisher exact. Internally, PyRanges represents intervals as a dictionary of pandas DataFrames keyed by chromosome and optionally strand. This design enables efficient per-chromosome parallelism and easy integration with the Python data science stack. Operations are implemented as modular functions in separate files under the `methods/` directory, each accepting a DataFrame and keyword arguments from a central dispatcher. The library also provides a parallel execution framework using Ray via `pyrange_apply` and related functions, allowing users to apply custom functions to each chromosome/strand group in parallel. Although primarily a software library, this repository has a strong research character: it includes built-in example datasets (e.g., ChIP-seq peaks, CpG islands, Ensembl annotations), a bookdown tutorial with executable R Markdown, property-based tests that compare results against the bedtools suite, and statistical methods designed for colocalization and annotation enrichment. This makes it equally valuable as a research tool for bioinformatics analysis. Maintenance note: This is the legacy version 0 of PyRanges, superseded by a redesigned version 1 (pyranges1). Despite the deprecation, the codebase is mature, well-tested, and still functional. The design patterns (modular operations, per-chromosome dispatch, property-based testing against a reference tool) are noteworthy and could be reused in other bioinformatics and data engineering projects.

RATING: 7.8/10 MAINT: maintained DRIFT: low
▸ 2 reusable components found
Almenon/AREPL-vscode ★ 303 46 APPLICATION

AREPL is a VS Code extension that evaluates Python code in real-time as you type, displaying variables, errors, and print output in a side panel. It provides a scratchpad-like experience for Python development, with features like real-time evaluation, variable inspection, error display, and support for dumping variables from functions. The extension uses a Python backend (arepl-backend npm package) to execute code and communicate results via JSON. The TypeScript architecture includes a PreviewManager that orchestrates execution and preview updates, a PreviewContainer that manages the webview, and separate modules for inline errors (PythonInlinePreview) and panel display (PythonPanelPreview). The codebase is well-structured with clear separation of concerns, includes unit tests (mocha), and uses telemetry for diagnostics. The extension is maintained (last release November 2024) and uses modern dependencies.

RATING: 7.8/10 MAINT: maintained DRIFT: low
▸ 2 reusable components found
plotly/dash-component-boilerplate ★ 294 196 APPLICATION

This repository is a Cookiecutter template for generating Dash component projects. It provides a structured starting point for creating custom Dash components, including Python package structure, React component code, build scripts (webpack), a demo application, and tests. Users run the template via `cookiecutter`, answer prompts about their project (name, component type, licensing), and receive a fully configured project ready for development. The template employs Jinja2 templating to conditionally include files based on user choices, such as asynchronous component loading or class/function-based React components. It includes pre-generation and post-generation hooks to validate user input and automate setup tasks like creating a virtual environment, installing dependencies, and running the initial build. Generated projects follow Dash's conventions for component distribution, including proper packaging for PyPI and NPM. Notably, the template includes a sophisticated webpack configuration implementing code splitting for asynchronous chunks and shared common chunks, optimizing bundle loading. The template also includes validation scripts to ensure the generated project's build configuration is correct. Tests verify the generated project can be built and the component renders correctly in a Dash application. The repository is actively maintained with recent commits and ongoing issue activity.

RATING: 7.8/10 MAINT: maintained DRIFT: low
▸ 2 reusable components found
MeVisLab/pythonqt ★ 293 109 APPLICATION

PythonQt is a dynamic Python binding library for the Qt framework, focused on embedding CPython into C++ Qt applications. The runtime in src/ exposes Qt objects to Python through custom Python type objects, signal/slot bridging, automatic type conversion, property access, and ownership transfer. Key entry points are PythonQt::init(), the PythonQt_QtAll extension, PythonQtObjectPtr, and the PythonQtScriptingConsole widget. The project is a library and code-generation toolchain rather than a standalone application; it contains no data pipelines or research components. The repository also ships a complete binding generator under generator/, which parses Qt C++ headers with a custom lexer/parser/simplecpp preprocessor pipeline, applies type-system XML rules, and emits wrapper code. Pre-generated bindings for Qt 5.15 are checked in under generated_cpp_515/, following a consistent Shell/PublicPromoter/Wrapper pattern that enables Python subclassing of Qt classes and exposure of protected methods. The project includes numerous examples and a functional test suite, and CI workflows exercise builds against multiple Qt versions including Qt 6.x. The codebase is professionally maintained but carries significant legacy from the Nokia Qt Script Generator lineage. The custom C++ parser has known limitations, the generated code is voluminous and tied to specific Qt versions, and many modules use extensive #if QT_VERSION branches. Overall it is a competent, specialized binding framework with a few genuinely reusable building blocks, but it is not a modern, lightweight codebase.

RATING: 7.8/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
Thank-you-Linus/Linus-Dashboard ★ 209 7 APPLICATION

Linus Dashboard is a Home Assistant custom integration that auto-generates a plug-and-play Lovelace dashboard from the entity, device, area, and floor registries. The frontend is a TypeScript strategy that dynamically builds views, chips, cards, and popups based on device class and domain, while the Python backend creates nested group entities (area → floor → global) for each domain, aggregates numeric sensors, and provides a configuration flow for exclusions and embedded dashboards. It integrates optionally with Magic Areas and Linus Brain for entity resolution, falling back to native registry data. The system is bilingual (EN/FR) and heavily automated with release scripts, CI workflows, and a fake-house test environment. Architecturally, the project is a hybrid: a Python backend following Home Assistant component patterns and a TypeScript frontend built with Rspack, relying on external cards (Mushroom, Browser Mod, Card Mod, Swipe Card, Stack-in-Card). Core engineering patterns include abstract base classes (AbstractCard, AbstractChip, AbstractView), factory classes with dynamic imports, a central Helper class that acts as a registry cache, and memoization/performance profiling utilities. The backend uses a shared NestedGroupMixin to build hierarchical entity groups and pure aggregation logic in aggregate.py. The codebase is well-tested with Vitest and pytest, and includes extensive documentation and release automation, but also suffers from a large god object (Helper.ts >1600 lines), duplicated platform boilerplate, vendored minified third-party bundles, and partial French localization. It is actively maintained with recent commits, a responsive issue tracker, and regular beta/stable release cycles.

RATING: 7.8/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
mpolden/jarvis2 ★ 201 73 APPLICATION

JARVIS2 is a real-time dashboard framework designed for Raspberry Pi, built with Flask (Python) and Mithril (JavaScript). It features live-updating widgets via server-sent events (SSE) and a plugin-based job system for data fetching. The backend schedules periodic jobs (e.g., weather, public transport, email, RSS) that push data to connected browsers. The frontend renders widgets using Mithril components and updates them reactively as events arrive. The architecture is a monolith: a single Flask application with background scheduling via APScheduler. Key entry points are the Flask routes for dashboards, individual widgets, and the SSE event stream. External dependencies include various APIs (Yr, Entur, Avinor, Google APIs, Sonos, etc.) and libraries (Flask, APScheduler, requests, BeautifulSoup, soco). The codebase is well-structured, with clear separation between job implementations, static assets, and templates. It includes a comprehensive test suite and CI pipeline. The project is actively maintained, targeting Python 3.14 and using modern tooling (uv, ruff). However, it retains some deprecated dependencies (oauth2client) and Python 2 compatibility shims, indicating moderate technical drift.

RATING: 7.8/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
alexdelorenzo/aiopath ★ 197 15 APPLICATION

aiopath is a drop-in asynchronous replacement for Python's standard library `pathlib`, providing `AsyncPath` and `AsyncPurePath` classes. It replicates the complete `pathlib` API but makes all I/O-bound methods (like `.exists()`, `.read_text()`, `.glob()`, `.mkdir()`) awaitable, allowing non-blocking filesystem operations in asyncio or trio applications. The library builds on `anyio.to_thread` for executing blocking OS calls off the event loop and `aiofile` for async file handles. It strictly inherits from `pathlib.Path` and `PurePath`, preserving method signatures, docstrings (via a metadata decorator), and class hierarchy. The implementation is clean and type-annotated throughout, requiring Python 3.12+ and using modern syntax like `type` aliases. Old compatibility layers (for Python 3.9-) are kept in `src/aiopath/old/` alongside stale backup files, indicating an ongoing renovation to drop legacy support.

RATING: 7.8/10 MAINT: maintained DRIFT: low
▸ 2 reusable components found
youngyangyang04/leetcode-master ★ 62175 12311 DATA_RESEARCH

This repository is a comprehensive educational collection of algorithm problem solutions for LeetCode and Kamacoder (ACM mode), organized as a structured learning path for interview preparation. It contains over 350 Markdown files, each providing a detailed explanation, multiple solution approaches, and code in C++, Java, Python, Go, JavaScript, and many other languages. The content is purely pedagogical and static—not a runnable application or a data pipeline. It serves as the online companion to the '代码随想录' (programmercarl.com) book and video series. The repository demonstrates high consistency in formatting and pedagogical templates, but it is not software engineering; the 'craftsmanship' lies in the educational structure rather than in software architecture. It is hybrid in the sense that some files include empirical complexity analysis, but the dominant character is an educational resource.

RATING: 7.7/10 REPRO: 9.9/10 MAINT: maintained DRIFT: low
▸ 4 reusable components found
OpenBMB/VoxCPM ★ 38414 4343 APPLICATION

VoxCPM is a tokenizer-free, multilingual text-to-speech (TTS) system developed by OpenBMB. It supports voice cloning, voice design, and controllable speech generation across 30 languages and 9 Chinese dialects, outputting 48kHz audio. The architecture is a diffusion-autoregressive model built on MiniCPM-4, comprising AudioVAE, Local Encoder, Text-Semantic LM, Residual Acoustic LM, and Local DiT. The repository provides multiple interfaces: a Gradio web application (app.py) for interactive use, a command-line interface (voxcpm.cli) for batch processing, a fine-tuning web UI (lora_ft_webui.py) for LoRA and full-parameter training, and Python APIs for integration. It also includes utilities for audio enhancement (ZipEnhancer), timestamp alignment, and text normalization. While primarily an application, it contains research-grade model definitions and training pipelines, making it a hybrid project with a strong application focus.

RATING: 7.7/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
NirDiamant/RAG_Techniques ★ 29755 3646 DATA_RESEARCH

This repository is a comprehensive, educational collection of 42+ Jupyter notebooks and runnable scripts demonstrating a wide array of Retrieval-Augmented Generation (RAG) techniques. It is primarily a data_research and educational resource, not a deployable application or library. The codebase serves as a practical cookbook for engineers and researchers, covering the full RAG stack from basic chunking and retrieval (e.g., simple RAG, BM25) to advanced methods like GraphRAG, Self-RAG, HyDE, RAPTOR, and agentic RAG. It also includes a dedicated evaluation framework with notebooks and reusable scripts for measuring faithfulness, relevance, and correctness using tools like DeepEval and custom LLM judges. The architecture is modular, with a shared helper_functions.py providing common utilities for PDF loading, embedding, and retrieval, and an evaluation/ module offering reusable evaluation pipelines. The runnable scripts in all_rag_techniques_runnable_scripts/ provide cleaner, class-based implementations of the techniques that are more suitable for integration into other projects than the notebooks themselves. While the code is well-structured for an educational project and demonstrates high craftsmanship in its reusable components, it is not designed for production deployment. Reproducibility is limited by the lack of a pinned dependency file and reliance on external API keys. The repository is actively maintained and highly influential (29k+ stars), making it a valuable reference for anyone building or evaluating RAG systems.

RATING: 7.7/10 REPRO: 3.0/10 MAINT: maintained DRIFT: medium
▸ 4 reusable components found
deezer/spleeter ★ 28396 3057 APPLICATION

Spleeter is a Python library and CLI tool for music source separation, providing pretrained models to decompose audio tracks into stems (e.g., vocals, drums, bass, piano). The codebase is structured around a core Separator class backed by TensorFlow estimation, with abstract audio adapters (default FFMPEG), model providers (GitHub releases), and configuration loading from embedded or file-based JSON. The architecture supports both inference and training, with a well-defined pipeline for waveform loading, STFT computation, U-Net-based separation, and output saving. The library is designed for production use with multiprocessing support and Docker deployment. However, it relies heavily on deprecated TensorFlow 1.x APIs (tf.compat.v1, tf.estimator), indicating technical drift. The code is well-organized with clear separation of concerns, reusable components (audio adapter, model provider, utilities), and comprehensive test coverage.

RATING: 7.7/10 MAINT: maintained DRIFT: medium
▸ 3 reusable components found
ashishps1/awesome-low-level-design ★ 27339 6604 APPLICATION

This repository is an educational resource focused on teaching low-level design (LLD) and object-oriented design (OOD) principles through runnable code examples. It contains implementations of the Gang of Four design patterns (creational, structural, behavioral) across multiple programming languages including C++, Java, C#, Python, Go, and JavaScript/TypeScript. Additionally, it provides problem statements and solutions for common LLD interview questions such as parking lot systems, ATM implementations, vending machines, and social networking platforms. The repository serves as both a reference guide and a practical learning tool. Each design pattern is demonstrated with minimal, focused examples that isolate the pattern's core mechanics. The problem/solution sections show how these patterns can be applied in real-world scenarios, complete with class diagrams and explanations. While the code is functional and demonstrative, it prioritizes clarity of concept over production robustness, making it ideal for learning but requiring adaptation for actual deployment. Although primarily educational, the repository contains executable code that could be considered a collection of mini-applications. Each pattern implementation and problem solution can be run independently to observe the behavior. The multi-language approach allows developers to compare how the same pattern is expressed in different ecosystems, highlighting both universal principles and language-specific idioms.

RATING: 7.7/10 MAINT: active DRIFT: low
▸ 3 reusable components found
LmeSzinc/AzurLaneAutoScript ★ 9716 1157 APPLICATION

AzurLaneAutoScript (ALAS) is a Python-based game automation bot for the mobile game Azur Lane. It uses computer vision (OpenCV, template matching, OCR via cnocr/mxnet) and Android Debug Bridge (ADB) to control an emulator, automating nearly all gameplay loops: campaign sorties, daily missions, research, dormitory, guild operations, Operation Siren, and event-specific maps. The architecture is modular, with a core framework providing device abstraction (module/device), image recognition (module/ocr, module/map_detection), configuration management (module/config), and a web UI (module/webui) built on PyWebIO with an Electron wrapper. Campaign logic is organized into hundreds of per-event map scripts under campaign/, each defining map grids, enemy spawns, and battle strategies via a consistent CampaignBase subclass pattern. The system runs as a daemon, continuously executing scheduled tasks with configurable priorities and notifications (onepush, Discord). External dependencies include uiautomator2, adbutils, OpenCV, cnocr, mxnet, pywebio, and zerorpc, with pinned versions targeting Python 3.7. The codebase is actively maintained with frequent updates for new game events, but suffers from significant duplication across campaign files and reliance on outdated library versions.

RATING: 7.7/10 MAINT: active DRIFT: high
▸ 3 reusable components found
openatx/uiautomator2 ★ 8424 1606 APPLICATION

This repository provides the Python library `uiautomator2` for Android UI automation. It allows scripts to control Android devices by sending HTTP/JSON-RPC requests to an on-device server (either a Java-based UiAutomator2 jar or the older atx-agent). The core functionality includes element selection via selectors and XPath, gesture simulation (click, swipe, drag), text input via an IME, screenshot capture, UI hierarchy dumps, and app management. It also ships a CLI tool (`u2cli`) with subcommands for device inspection, app operations, and an agent server that exposes a persistent API for LLM/agent-based interactions. The architecture follows a client-server pattern where the Python client communicates over ADB-forwarded ports. The repository includes extensions for HTML reports, performance monitoring, and device info lookups, as well as archived modules for OCR and image recognition. It is widely used for automated testing of Android applications.

RATING: 7.7/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
Guake/guake ★ 4670 607 APPLICATION

Guake is a drop-down terminal emulator for the GNOME desktop environment, inspired by the Quake game terminal. It provides a fast, keyboard-driven terminal that slides down from the top of the screen with a single keystroke (default F12). The application is built with Python 3, GTK3, and VTE (Virtual Terminal Emulator), and uses GSettings for configuration, D-Bus for remote control, and Glade for UI layout. It supports tabs, split terminals, customizable color palettes, background images, transparency, session save/restore, workspace-aware tab sets, and extensive keyboard shortcuts. The architecture is modular, with separate modules for preferences, keybindings, terminal management, and utilities, though some files (e.g., guake_app.py, prefs.py) are large and tightly coupled. The codebase shows signs of technical debt such as deprecated GTK APIs, Python 2 compatibility remnants, and partial Wayland support, but remains actively maintained with a comprehensive CI pipeline and regular releases.

RATING: 7.7/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
TencentCloudADP/youtu-agent ★ 4609 480 APPLICATION

Youtu-Agent is a comprehensive AI agent framework developed by Tencent Cloud's Youtu Lab, designed for building, orchestrating, and evaluating LLM-powered agents. It provides a modular toolkit system, multi-agent orchestration patterns (simple, orchestra, orchestrator, workforce), a reusable configuration system (Hydra+YAML), and support for various environments (local shell, Docker, E2B sandbox, browser). The framework also includes a research-grade evaluation pipeline with benchmarks like GAIA, SWE-bench, WebWalkerQA, and a training-free GRPO module for agent self-improvement through experience distillation. Two front-end applications accompany the backend: a React-based chat UI and a Next.js evaluation analysis dashboard, both communicating via WebSocket and REST APIs. While the primary character is an application framework, Youtu-Agent has a strong data/research dimension: it ingests benchmark datasets, runs model-based judges, stores trajectories in SQL/PostgreSQL, and implements a meta-learning loop that extracts 'experiences' from agent behaviors. This hybrid nature makes it suitable both for production agent deployment and for conducting RL/benchmarking experiments. The codebase is well-organized into distinct modules (agents, tools, config, eval, practice, tracing, utils), uses modern Python packaging (uv, pyproject.toml), and includes extensive example configs and scripts. External dependencies include the openai-agents SDK, various LLM providers (OpenAI, Anthropic, etc. via litellm), search APIs (Serper, Jina, Google), document parsers (Chunkr, Unstructured), and MCP servers. Deployment supports Docker and multiple environment types. The repository is actively maintained with CI/CD, documentation (mkdocs), and a growing set of features.

RATING: 7.7/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
stanfordmlgroup/ngboost ★ 1888 253 APPLICATION

NGBoost is a Python library for probabilistic gradient boosting that produces full predictive distributions rather than point estimates. It implements the Natural Gradient Boosting algorithm described in the research paper (arXiv 1910.03225). The library provides a scikit-learn-compatible API with NGBRegressor, NGBClassifier, and NGBSurvival classes, supporting a wide range of distributions (Normal, Bernoulli, Poisson, Gamma, Weibull, Beta, MultivariateNormal, etc.) and scoring rules (LogScore, CRPScore). A standout feature is the SymPy-based distribution factory (sympy_utils) that automatically derives gradients and Fisher Information from symbolic expressions, enabling easy creation of custom distributions. The architecture is modular: a core boosting loop (ngboost.py) works with pluggable base learners (learners.py), distributions (distns/), and scores (scores.py), combined via a manifold pattern (manifold.py). The library also includes survival analysis with censored scores, partial_fit for incremental learning, and backward-compatible model loading. While primarily a software library, it has strong research roots with experimental scripts, figure generation, and extensive Jupyter notebook examples. The codebase is well-structured and tested, though some deprecated sklearn usage and duplicated documentation content indicate moderate technical drift.

RATING: 7.7/10 MAINT: maintained DRIFT: medium
▸ 3 reusable components found
yqxie1991/WxCleaner ★ 1201 120 APPLICATION

WxCleaner is a cross-platform desktop application for detecting and removing duplicate files in WeChat storage directories. It uses a three-stage hashing algorithm (size → partial hash → full hash) to efficiently identify duplicates while minimizing disk I/O. The GUI, built with ttkbootstrap, provides real-time progress visualization, sortable file listings, and safe deletion via system recycle bin. Key features include platform-specific font adaptation, automatic WeChat path detection, and multi-threaded operations to maintain UI responsiveness during scans and cleanup. The architecture separates concerns into reusable modules: scanner.py handles the duplicate detection logic with progress callbacks, platform_utils.py provides cross-platform abstractions for file operations and UI elements, and wx_gui.py manages the Tkinter-based interface. The application supports pausing/resuming deletions, visual distinction between original and duplicate files, and contextual actions like opening file locations. Packaging is handled via PyInstaller with automated GitHub Actions workflows for Windows, macOS, and Linux builds. While the GUI components are application-specific, the core scanning and platform abstraction layers demonstrate strong reusability potential. The codebase shows attention to cross-platform compatibility, user safety (using send2trash instead of permanent deletion), and performance optimization through staged hashing. Dependency management is current, and the project maintains active maintenance with recent commits and release automation.

RATING: 7.7/10 MAINT: maintained DRIFT: low
▸ 2 reusable components found
$ loading more...
$ submit: