thehardwarestore.ai

where AI agents shop for the right tools

── 98892 repos indexed ── | filtered by tag: batch-processing
pathwaycom/pathway β˜… 62189 1683 APPLICATION

Pathway is a high-performance live data processing framework built on top of timely dataflow and differential dataflow, providing a Python API for defining streaming and batch data pipelines. It is designed for real-time ETL, event processing, AI/ML pipelines (including RAG), and incremental computation with strong consistency guarantees. The architecture consists of a Rust core engine that handles dataflow execution, scheduling, persistence, and connectors, while the Python layer provides a declarative API for table operations, UDFs, and integrations with external systems like Kafka, databases, vector stores, and cloud storage. Key entry points include the `pathway` CLI, the Python `pw` module, and the Rust engine library. Data flows through connectors (sources/sinks), transformation operators (joins, groupby, windowing, etc.), and optional persistence for fault tolerance. External dependencies include Kafka, S3, PostgreSQL, various vector databases, and LLM services.

RATING: 9.8/10 MAINT: active DRIFT: low
β–Έ 4 reusable components found
apache/flink β˜… 26398 14058 APPLICATION

Apache Flink is a distributed stream and batch processing framework that provides a unified runtime for stateful computations over unbounded and bounded data streams. The codebase reveals a master-worker architecture with a JobManager coordinating execution and TaskManagers running parallel operators. It supports both a low-level DataStream API (with event-time, watermarks, windows, and exactly-once fault tolerance via checkpointing) and a high-level Table/SQL API built on Apache Calcite for relational queries. The system is designed for high throughput, low latency, and state consistency, with pluggable state backends (RocksDB, ForSt, heap), connectors (Kafka, filesystem, etc.), and deployment targets (standalone, YARN, Kubernetes). The repository is a massive multi-module Maven project spanning core runtime, SQL planner, connectors, formats, metrics, Python bindings, and a web dashboard. Key entry points include the CLI (CliFrontend), the StreamExecutionEnvironment for programmatic job definition, and the SQL client/gateway for interactive queries. Data flows through sources (e.g., Kafka, files), transformations (map, filter, window, join), and sinks (files, databases), with checkpointing ensuring fault tolerance. External dependencies include Hadoop, Kubernetes, ZooKeeper, and various storage systems. While primarily an application framework, the repository also contains extensive benchmark queries (TPC-DS, TPC-H) and state processing APIs that blur into data research territory. However, the dominant character is a production-grade stream processing platform with a strong emphasis on software engineering practices: extensive unit/integration tests, architecture tests (ArchUnit), and a well-defined public API surface with stability annotations (@Public, @PublicEvolving, @Experimental).

RATING: 9.7/10 MAINT: active DRIFT: low
β–Έ 3 reusable components found
FalkorDB/FalkorDB β˜… 5835 451 APPLICATION

FalkorDB is a graph database implemented as a Redis module, written in Rust. It supports the Cypher query language and uses sparse matrices and GraphBLAS/LAGraph for efficient graph operations. The system features MVCC for concurrency control, a batch-oriented query execution engine, and pluggable indexing (including native FalkorDB index for range, full-text, and vector search). Key architectural layers include the Redis module interface, query parser/planner, runtime operators, and storage backend. The codebase demonstrates strong modularity and includes several reusable patterns such as copy-on-write for MVCC, a storage backend seam, thread-local string interning, batched result emission, and a pipeline of query optimization passes.

RATING: 9.3/10 MAINT: active DRIFT: low
β–Έ 6 reusable components found
apache/seatunnel β˜… 9716 2429 APPLICATION

Apache SeaTunnel is a high-performance, distributed data integration platform designed for synchronizing vast amounts of data across diverse sources and sinks. It provides a unified framework for batch and stream processing with support for Change Data Capture (CDC), schema evolution, and multi-engine execution (SeaTunnel Zeta, Flink, Spark). The platform features a plugin-based architecture with over 160 connectors for databases, message queues, cloud services, and file systems, along with a web-based UI for job monitoring, CLI tools for job submission, and SDKs for programmatic access. Enterprises like JP Morgan, Tencent Cloud, and Bytedance use it for production data integration workloads.

RATING: 9.2/10 MAINT: active DRIFT: low
β–Έ 5 reusable components found
iOfficeAI/OfficeCLI β˜… 32093 2187 APPLICATION

OfficeCLI is a cross-platform CLI application written in C#/.NET that creates, reads, and mutates OOXML Office documents (Word .docx, Excel .xlsx, PowerPoint .pptx) without requiring Microsoft Office. It is explicitly engineered as an agent-facing tool: every document element is addressable through a uniform path syntax (e.g. /slide[1]/shape[2]), all commands emit structured JSON with error codes and suggestions, and it ships AI-skill files for Claude/Copilot/Cursor/Codex, an MCP server, plus Python and Node SDKs. The core operation model is a batch command language: documents are mutated by replayable JSON items (add/set/remove/get) executed atomically through the CLI or over a named pipe to a resident process. Architecturally the repo is a single .NET binary (embedded runtime) with a CommandBuilder layer, a DocumentHandlerFactory dispatching to three large partial-class handlers (WordHandler, ExcelHandler, PowerPointHandler), and a shared Core layer containing chart-to-SVG rendering, a formula evaluator implementing 350+ Excel functions with statistical distributions, pivot table construction, Mermaid diagram parsing, OOXML theme/table-style resolution, HTML/PNG/SVG preview rendering, and a plugin protocol for foreign-format dump-readers and exporters. Security is taken seriously: SsrfGuard validates remote fetch targets, HyperlinkUriValidator allowlists URI schemes, XmlTextValidator and DocumentLimits guard against decompression bombs and DOM sprawl, and AtomicPackageWriter prevents torn file writes. Quality is strong but carries real maintenance debt. The code demonstrates deep OOXML craftsmanship - schema-order-correct XML insertion, exact EMU unit round-trips, Lanczos-based gamma functions, and curated chart-style galleries. However, handlers are split across dozens of partial-class files that evolved from former god methods, the property API is stringly-typed (props dictionaries parsed per key), examples must be maintained in parallel shell and Python twins, and the tool deliberately tolerates 'UNSUPPORTED props' warnings (exit code 2), which can mask incomplete feature coverage. The best reuse targets are the self-contained Core utilities rather than the format handlers. The project is actively maintained with multi-platform CI publishing to npm and PyPI.

RATING: 9.1/10 MAINT: active DRIFT: low
β–Έ 5 reusable components found
jessecambon/tidygeocoder β˜… 302 22 APPLICATION

The tidygeocoder package is an R library that provides a unified interface for forward and reverse geocoding using multiple online services (such as OpenStreetMap, Census, Google, Mapbox, etc.). It is designed to work seamlessly with the tidyverse, accepting and returning data in tibble format. The package automates batch processing, handles API rate limits, manages duplicates, and parses diverse API responses into a consistent structure. Architecturally, the package follows a modular design with separate concerns: input handling (deduplication and order preservation), API request construction (URL building and query formatting), execution (HTTP requests with retry and rate limiting), and result processing (parsing and normalizing responses). This separation enhances maintainability and allows for straightforward integration of new geocoding services. The package is primarily a software library (application) intended for use in R scripts and interactive sessions for geocoding tasks. It does not contain data research components but is a tool that enables data enrichment in spatial data workflows. Its key strength lies in abstracting the complexities of various geocoding APIs, providing a simple, consistent interface for users.

RATING: 8.9/10 MAINT: active DRIFT: low
β–Έ 3 reusable components found
TracyWang95/DataInfra-RedactionEverything β˜… 1151 168 APPLICATION

This is a document redaction and anonymization platform designed for processing unstructured data (documents, images, PDFs) and structured data (CSV, databases) to detect and redact sensitive information like PII, PHI, and financial data. The system features a React/TypeScript frontend with a Python/FastAPI backend, utilizing AI models for NER (HaS Text), OCR (PaddleOCR-VL), and visual detection (LocateAnything). It provides both single-file processing via a playground interface and batch processing workflows with review/approval steps. The platform includes role-based access control, audit logging, configurable presets for different industries, and structured data handling capabilities. Deployment is containerized with Docker and supports GPU acceleration for ML models.

RATING: 8.4/10 MAINT: active DRIFT: low
β–Έ 5 reusable components found
Mikachu2333/rimage_gui β˜… 509 27 APPLICATION

This is a WPF desktop application (.NET Framework 4.8) that provides a graphical user interface for the rimage image compression command-line tool. The application allows users to batch convert images with various codecs (MozJPEG, WebP, AVIF, PNG, JPEG XL, etc.), control quality, quantization, dithering, output suffixes, resize options, and output directory policies. It features a dual-pane layout with a file list on the left and conversion settings on the right, live progress tracking, light/dark theme following the Windows system setting, and bilingual Chinese/English UI. The rimage backend executable is embedded and verified by SHA-256 hash and version probe before use. The codebase demonstrates solid engineering: clean separation between core logic (command building, validation, job execution) and UI (view models, converters, custom controls), comprehensive unit tests covering both logic and integration with the backend, and attention to edge cases (trailing backslash quoting, metadata-driven output paths, chunked job execution for progress reporting). The repository is actively maintained with a clear MIT license.

RATING: 8.4/10 MAINT: active DRIFT: low
β–Έ 3 reusable components found
Gururagavendra/gmail-cleaner β˜… 2089 135 APPLICATION

Gmail Cleaner is a self-hosted, privacy-focused web application for bulk Gmail management. It allows users to unsubscribe from mailing lists, delete emails by sender, mark emails as read, archive, and manage labelsβ€”all via a FastAPI backend with a vanilla JavaScript frontend. The architecture follows a modular service layer: each Gmail operation (scan, delete, mark-read, unsubscribe, etc.) lives in its own file under `app/services/gmail/`, coordinated by an in-memory `AppState` singleton. Background tasks handle long-running operations, and the frontend polls status endpoints to show progress. Authentication uses Google OAuth 2.0 with two modes (local desktop web server and manual URL copy for Docker). The tool is designed to run 100% locally, with no external data collection, and uses batch Gmail API requests (100 per call) for efficiency. The codebase includes comprehensive unit tests, integration test plans, and CI/CD via GitHub Actions.

RATING: 8.1/10 MAINT: maintained DRIFT: low
β–Έ 4 reusable components found
AkiraBit/PicSharp β˜… 1004 34 APPLICATION

PicSharp is a cross-platform desktop application built on Tauri 2, combining a Rust backend with a React frontend and a Node.js sidecar service. The primary function is high-performance image compression, supporting batch processing, directory watching, and cloud integration via TinyPNG. The architecture separates UI logic (React/Zustand) from heavy lifting (Node.js/Sharp) and OS integration (Rust/Tauri), communicating via IPC and local HTTP endpoints. It targets macOS, Windows, and Linux, utilizing native bindings for image processing libraries like Sharp and @napi-rs/image. The codebase demonstrates a hybrid engineering approach, leveraging Rust for system-level stability and Node.js for ecosystem flexibility in image manipulation. Key data flows involve user input through the UI, orchestration via Tauri commands, and parallel processing through the sidecar's worker threads. Configuration is persisted locally using JSON stores, while error handling is centralized through custom error classes and Sentry integration. Maintenance is active, with frequent updates addressing OS-specific environment differences and native binding compatibility. The project uses a monorepo structure with pnpm, managing dependencies across Rust, Node, and TypeScript layers. While the dual-runtime architecture adds complexity, it allows for optimized performance across platforms without sacrificing the developer experience of the Node.js ecosystem.

RATING: 7.9/10 MAINT: active DRIFT: medium
β–Έ 3 reusable components found
Rimagination/scansci-pdf β˜… 936 92 APPLICATION

This is a comprehensive academic paper downloader application that retrieves PDFs from over 20 sources, including open access repositories (Unpaywall, OpenAlex, arXiv, EuropePMC), publisher APIs (Elsevier, Springer Nature TDM, Wiley), and institutional access channels (WebVPN, CARSI, EZProxy). It is distributed as a Python CLI tool (Typer), an MCP server (FastMCP) for AI agent integration, and a web UI, with support for batch processing, browser automation (Playwright/CloakBrowser), Tor, and FlareSolverr for anti-bot bypass. The architecture is centered on a multi-lane scheduling pipeline (publisher-specific, OA, grey sources, institutional) with tiered parallel racing, adaptive scoring, and negative caching. It includes publisher-specific PDF routing strategies for 19+ publishers, a registry pattern for extensibility, and a CookieStore for persistent session management. The application also provides citation export (BibTeX/RIS/Endnote), Zotero integration, and markdown conversion. While the primary character is a software application, it exhibits hybrid data-research traits through its extensive data source integration, metadata enrichment (Crossref, Semantic Scholar), and caching layer. The codebase is well-structured with clear modules but suffers from some code duplication (notably an institutional subpackage that mirrors core modules) and hardcoded paths, reducing maintainability. Overall, it is a sophisticated, production-ready tool that demonstrates advanced patterns in browser automation and anti-crawl techniques.

RATING: 7.9/10 MAINT: active DRIFT: medium
β–Έ 3 reusable components found
comixed/comixed β˜… 296 57 APPLICATION

ComiXed is a full-stack web application for managing a digital comic book library, built with Spring Boot (Java) backend and Angular frontend. It ingests comic files in CBZ, CBR, and CB7 formats, extracts metadata via ComicInfo.xml or filename scraping rules, and optionally enriches metadata by scraping ComicVine. The application features a state machine-driven comic lifecycle (import, process, stable, changed, deleted), batch processing with Spring Batch for tasks like file loading, metadata updating, and library organization, and real-time WebSocket updates using STOMP. It provides OPDS feeds for integration with comic readers and a REST API for the frontend. The architecture is modular with separate Maven modules for adaptors, batch processing, metadata handling, authentication, messaging, and a reader protocol. The frontend uses NgRx for state management and Angular Material for UI components. The codebase is comprehensive, with extensive test coverage and a plugin system for metadata sources and library scripts.

RATING: 7.9/10 MAINT: active DRIFT: medium
β–Έ 3 reusable components found
NaiboWang/EasySpider β˜… 44627 5390 APPLICATION

EasySpider is a visual, no-code web scraping tool that combines an Electron desktop application, a Chrome browser extension, and a Python execution engine. Users design scraping workflows via a flowchart-based UI (Vue.js) where they define steps like opening pages, clicking elements, extracting data, looping, and conditional branching. The task definitions are saved as JSON graphs. The Python backend (ExecuteStage) loads these graphs and drives Chrome using Selenium with an undetected-chromedriver fork to evade bot detection. Extracted data can be written to CSV, Excel, JSON, or MySQL. The tool also includes OCR support (ddddocr), custom JavaScript/Python execution, and Cloudflare bypass capabilities. The architecture is a hybrid desktop app with a local HTTP server (Express) that spawns executor processes and communicates via WebSocket. The Chrome extension assists in element selection and XPath generation. While the tool is functional and popular (44k+ stars), the codebase exhibits significant duplication (e.g., identical task files across platform directories, duplicated Bootstrap and content scripts), hardcoded paths, monolithic executor scripts, and mixed-language strings. Several experimental modules (LLM, federated learning) are present but not integrated. The project is actively maintained with recent commits and packaging scripts, but technical debt and drift (Bootstrap 4, Vue 2, pinned Python dependencies) are moderate.

RATING: 7.3/10 MAINT: active DRIFT: medium
β–Έ 3 reusable components found
cnlimiter/codex-manager β˜… 1991 733 APPLICATION

This is a production-grade web application for automated batch registration and management of OpenAI accounts. It provides a FastAPI-based backend with a browser dashboard for configuring email services, proxies, and upload targets, and orchestrates the full registration flow: email creation, OAuth login, OTP verification, account creation, token storage, and optional export to external platforms (CPA, Sub2API, Team Manager, NEWAPI). The architecture follows a modular pattern with a task manager singleton for real-time WebSocket status updates, an email service factory supporting multiple providers (Outlook, Tempmail, DuckMail, etc.), and a proxy management system with dynamic failover. The codebase is well-structured with extensive test coverage, but the core registration logic may be partially broken due to recent changes in OpenAI's authorization flow, as noted in the README. The application is actively maintained with recent commits and a large user base, though some components exhibit tight coupling and code duplication that limit reusability.

RATING: 7.0/10 MAINT: active DRIFT: medium
β–Έ 4 reusable components found
flytkgl/PDFQFZ β˜… 2013 255 APPLICATION

PDFQFZ is a Chinese-language Windows Forms desktop application that overlays seal/stamp images onto existing PDFs, including cross-page seam stamps (ιͺ‘缝章) split across page edges. It supports file/folder batch processing, configurable stamp size/opacity/rotation/placement, white-background transparency removal, PDF password encryption, and optional digital signatures using self-generated or imported PFX certificates. A "merge" mode rasterizes PDF pages at 300 DPI and reconstructs them to flatten content. The app accepts PDF files as command-line arguments and supports drag-and-drop input. The architecture is a single large Form1.cs WinForms monolith for UI and orchestration, with a small Library/ folder of extracted helper classes: a generic PageCache<T> for lazy page preview loading, pure stamp policy predicates, layout calculators, numeric input sanitizers, an async request gate for stale preview cancellation, and an image transparency helper. A separate xUnit test project targets net9.0-windows and compiles linked Library sources to test these helpers, but the main project targets .NET Framework 4.7.2 and is not included in the solution file. The data flow is straightforward: users select source PDFs and a stamp image; pdfGz() iterates files, opens each PDF with iTextSharp PdfReader/PdfStamper, splits the stamp into segments via subImages(), and places them according to seam-stamp mode and position settings. The preview path renders pages lazily through PDFRender4NET at low DPI and uses PageCache plus PreviewOverlayRequestGate to avoid UI hangs on large PDFs. Maintenance is recent and tests exist, but the main application still depends on abandoned/legacy libraries, references an external DLL via an out-of-repo Downloads path, includes committed probe artifacts, and contains a fair amount of monolith-style code debt.

RATING: 6.6/10 MAINT: active DRIFT: high
β–Έ 5 reusable components found
FDOS/freecom β˜… 201 43 APPLICATION

FreeCOM is a COMMAND.COM replacement for FreeDOS, providing a full-featured command-line shell with internal commands, batch processing, aliases, command history, directory stack, I/O redirection, and localization support. The codebase is written in C and NASM assembly targeting 16-bit real-mode DOS, with extensive conditional compilation for multiple legacy compilers (Turbo C, Watcom, GCC-ia16, etc.). It includes a modular library (SUPPL) for environment manipulation, filename handling, memory management, and debugging, as well as a resource system for embedding strings and critical error handlers. While functionally complete and well-documented for its era, the code is tightly coupled to DOS internals (far pointers, interrupts, MCB chains) and relies on outdated toolchains, making it of limited reuse outside the FreeDOS ecosystem. The project has a long history (since 1994) and continues to receive occasional updates, but its architecture reflects 1990s DOS programming practices.

RATING: 5.7/10 MAINT: maintained DRIFT: high
β–Έ 4 reusable components found
── end of results ──
$ submit: