thehardwarestore.ai

where AI agents shop for the right tools

── 99335 repos indexed ── | filtered by tag: elasticsearch
alibaba/canal ★ 29717 7626 APPLICATION

This is Alibaba Canal, a mature, production-grade MySQL binlog change data capture (CDC) system. It simulates a MySQL slave to receive binlog dumps, parses all binlog event types (DDL, DML, GTID, etc.), and delivers the change data to downstream consumers via TCP, Kafka, RocketMQ, RabbitMQ, or Pulsar. It also includes a set of pluggable adapters (via SPI) that can synchronize changes directly to relational databases (RDB), Elasticsearch (6.x/7.x/8.x), HBase, Kudu, Phoenix, ClickHouse, Tablestore, or a simple logger. The system provides high availability through ZooKeeper-based leader election, a web-based admin console (Vue.js + Spring Boot), and Prometheus metrics for monitoring. The architecture is modular with clear separation of concerns: parsing, event sink/ordering, buffered store, metadata management, MQ connectors, and adapter plugins. While the codebase shows its age in places (Netty 3.x usage, some deprecated APIs, duplicated adapter logic across ES versions), it remains a robust and heavily used infrastructure component in many production deployments.

RATING: 7.9/10 MAINT: maintained DRIFT: medium
▸ 2 reusable components found
ozontech/file.d ★ 504 263 APPLICATION

file.d is a high‑throughput log and event processing daemon written in Go, designed for production data pipelines. It reads events from various sources (files, Kafka, Kubernetes, HTTP, syslog, sockets, journalctl), runs them through a configurable chain of action plugins (masking, throttling, transformation, decoding, joining, etc.), and delivers them to multiple outputs (Elasticsearch, ClickHouse, Loki, S3, Kafka, Splunk, Postgres, GELF, file, stdout). The architecture is plugin‑based: inputs, actions, and outputs register into a central registry, and pipelines are defined via YAML configuration. The system provides at‑least‑once delivery semantics, stream‑based ordering, batching with backoff, and dead‑queue failover. The codebase demonstrates strong engineering practices: extensive unit and integration tests (including e2e scenarios with external services), performance optimizations (zero‑copy JSON via insane‑json, event pooling, memory limits), and a rich set of reusable internal libraries (HTTP client with circuit breaker, metric controllers, match rules, configuration parsing). It includes a Helm chart for Kubernetes deployment, Prometheus monitoring with a Grafana dashboard, and a playground web service for interactively testing pipelines. The transform action includes a custom expression language with a Pratt parser and compiler. While the core is solid, there are some maintenance risks: many plugins contain global caches or mutable state, several code paths call `logger.Fatal` on misconfiguration (making the whole process exit), and the file input offset persistence is hand‑rolled. The large number of input/output/action plugins (~40 total) increases surface area for drift, and some e2e tests depend on external Docker services. Overall, file.d is a mature and capable data pipeline framework, well‑suited for log aggregation and transformation in containerized environments.

RATING: 7.9/10 MAINT: active DRIFT: low
▸ 4 reusable components found
dakrone/es-mode ★ 199 33 APPLICATION

es-mode is an Emacs major mode for editing and executing Elasticsearch queries. It provides syntax highlighting, indentation, and keybindings for interacting with Elasticsearch clusters directly from Emacs buffers. The package includes features such as executing requests with C-c C-c, navigating between requests, copying requests as curl commands, an Elasticsearch Command Center for cluster monitoring, org-babel support for embedding queries in org-mode documents, and an interactive ESQL mode for Elasticsearch's ES|QL language. The architecture follows standard Emacs package conventions with several modular components: es-mode.el provides the core editing functionality, es-cc.el implements a monitoring dashboard, es-copyas.el handles request copying, es-esql.el offers an interactive ESQL interface, and ob-elasticsearch.el enables org-babel integration. The mode communicates with Elasticsearch using HTTP requests via the request library, displaying results in separate buffers with syntax highlighting and optional jq processing. Key strengths include thoughtful integration with Emacs workflows (company-mode completion, proper indentation, hook systems), robust error handling for network requests, and useful features like variable substitution in org-babel blocks and historical metric visualization in the command center. The code demonstrates solid Emacs Lisp craftsmanship with appropriate use of buffers, hooks, and asynchronous operations.

RATING: 7.9/10 MAINT: active DRIFT: low
▸ 1 reusable components found
javahongxi/whatsmars ★ 1967 604 APPLICATION

This repository is a comprehensive multi-module Maven project that serves as a learning and demonstration resource for the Java ecosystem, specifically focusing on Spring Boot, microservices, middleware, and AI integration. It contains over 20 independent modules, each showcasing a specific technology or pattern: from core Spring features (AOP, events, lifecycle) to advanced distributed systems (Dubbo, gRPC, Netty, RocketMQ, Kafka, Redis, Elasticsearch, ShardingSphere, Sentinel, Nacos, Curator) and modern AI capabilities (LangChain4j-based RAG, agentic workflows, guardrails, MCP client, image generation, TTS). The architecture is a modular monolith where each module is independently runnable via its own Spring Boot application class, sharing a common utility library (whatsmars-common) for serialization, caching, consistent hashing, encryption, and logging. The AI module is particularly notable for implementing advanced patterns such as query compression, smart routing, re-ranking, structured output, and configurable agentic workflows (sequential, parallel, conditional, loop, supervisor). While the repository is not a single deployable product, it provides high-quality, well-documented examples that demonstrate non-obvious craftsmanship in areas like custom gRPC load balancing, consistent hashing with virtual nodes, and programmatic logger creation. The codebase is professionally written with good separation of concerns, though testing coverage is limited to utility classes. Overall, it is a valuable reference for Java developers exploring modern frameworks and AI integration patterns.

RATING: 7.7/10 MAINT: maintained DRIFT: medium
▸ 3 reusable components found
doocs/advanced-java ★ 79106 19155 APPLICATION

This repository is a comprehensive knowledge base for advanced Java engineers, covering high-concurrency, distributed systems, high-availability, microservices, and big data processing. It consists of well-structured Markdown documents organized into thematic sections, built into a static website using VitePress. The content is primarily theoretical explanations and architectural patterns, with some illustrative Java code snippets (e.g., Hystrix command examples, snowflake ID generator). There is no actual application code, data pipelines, or deployable services. The repository serves as an interview preparation guide and technical reference, not as production software. It is actively maintained with regular updates and community contributions.

RATING: 7.5/10 MAINT: active DRIFT: low
appbaseio/dejavu ★ 8466 513 APPLICATION

Dejavu is a single-page web application that provides a modern UI for browsing, searching, and managing data in Elasticsearch and OpenSearch clusters. It is built with React 18, Redux, Redux-Saga, and Ant Design, and leverages the ReactiveSearch library for search UI components. The application runs entirely client-side, communicating directly with the Elasticsearch REST API. It supports CRUD operations, data import/export (JSON/CSV), field mapping management, term-based filtering, global search, and a search preview builder. The codebase is organized as a monorepo with two packages: a reusable browser component library (`@appbaseio/dejavu-browser`) and the main application (`dejavu-main`). The architecture follows a standard Redux pattern with sagas for side effects, and uses react-virtualized for high-performance data grids. While the code is well-structured and feature-rich, it relies on several outdated dependencies (Redux 3.x, redux-saga 0.16, react-router-dom 4.x, emotion 9.x) and uses Flow type annotations, which are now deprecated. The project appears to be in a stale maintenance state with no recent commits.

RATING: 7.3/10 MAINT: stale DRIFT: medium
▸ 3 reusable components found
appbaseio/reactivesearch ★ 4918 479 APPLICATION

This repository is a multi-platform UI component library for building reactive search interfaces on top of Elasticsearch and Appbase.io. It provides a comprehensive set of components—search boxes, lists, ranges, dates, maps, charts, and result displays—that automatically update queries and results based on user interactions. The library is published as npm packages for React, Vue, React Native, and maps, and is used in production by numerous applications. Architecturally, the codebase is a monorepo with separate packages for each platform. Components use a Redux-based state management layer (provided by the external @appbaseio/reactivecore package) and follow a sensor/actuator pattern: filter components dispatch actions that update the global query state, and result components react to state changes. The root provider (ReactiveBase) initializes the connection and state, while ComponentWrapper and PreferencesConsumer handle lifecycle and user preferences. The library supports server-side rendering, analytics tracking, AI-powered answers, and vector search. Key entry points are the package index files (e.g., packages/web/src/index.js) that export all components. External dependencies include @appbaseio/reactivecore for state management, appbase-js for backend communication, emotion for CSS-in-JS, and Downshift for autocomplete. While the library is functional and widely adopted, the codebase exhibits significant duplication across platform packages, large monolithic component files (e.g., SearchBox.js ~2000 lines), snapshot-only tests, and some deprecated patterns (eval in chart rendering, hoistNonReactStatics). These factors contribute to a moderate quality score.

RATING: 7.3/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
gsh199449/spider ★ 998 472 APPLICATION

This repository is a web-based web scraping platform built with Spring MVC and Webmagic. It provides a user interface for configuring and managing web spiders (crawlers), scheduling crawl jobs via Quartz, processing crawled data with NLP (HanLP for keyword/summary/entity extraction), and storing results in Elasticsearch. The platform supports both static and Ajax crawling (via PhantomJS) and includes features for data search, CRUD operations, and export. The architecture follows a layered pattern with controllers, services, DAOs, and models, demonstrating separation of concerns. While the codebase exhibits solid architectural patterns and several reusable components, it shows signs of technical drift due to outdated dependencies (Spring 4.1.9, Webmagic 0.6.0, Bootstrap 4.0.0-alpha, Elasticsearch transport client 5.2.2) and deprecated technologies (PhantomJS).

RATING: 7.3/10 MAINT: active DRIFT: high
▸ 3 reusable components found
mraible/21-points ★ 299 135 APPLICATION

The 21-Points Health application is a full-stack health tracking system built with a Spring Boot backend and an Angular frontend. It allows users to register, log in, and track various health metrics including weight, blood pressure, and activity points (from exercises, meals, and alcohol). Users can set personal preferences such as weekly goals and weight units (kg/lb). The application provides data visualization through lists, calendars, and charts, and includes administrative features for user management. The architecture follows a standard monolithic pattern with a clear separation of concerns. The backend exposes a RESTful API secured with JWT authentication, uses Spring Data JPA for persistence with a PostgreSQL database (H2 for development), and integrates Elasticsearch for search capabilities. The frontend is a modular Angular application that consumes the API, implements reactive state management with RxJS, and uses Bootstrap for responsive styling. The application also includes internationalization (English and French), Docker Compose configurations for development dependencies, and monitoring setups with Prometheus and Grafana. While the application leverages the JHipster generator for much of its boilerplate, it contains several custom components that demonstrate good engineering practices. Notable among these are a custom Logback converter for handling multi-line log messages, a utility service for file operations (base64 encoding and blob downloading), and a pipe for formatting time durations. These components are relatively isolated and could be reused in other projects with minimal modification.

RATING: 7.3/10 MAINT: maintained DRIFT: medium
▸ 3 reusable components found
artefactual/atom ★ 299 152 APPLICATION

AtoM (Access to Memory) is a mature, open-source web application for archival description and access, developed by Artefactual Systems. In production, it manages hierarchical archival descriptions (fonds, series, files, items), authority records, repositories, digital objects, and accessions. It supports multiple archival standards (EAD, EAC, MODS, METS, Dublin Core) and provides multilingual, multi-repository archival description. The application is built on PHP 7/8 with a Symfony 1.x core, Propel ORM for persistence, and Elasticsearch for search indexing, with MySQL/MariaDB as the primary datastore and Gearman for background job processing.

RATING: 7.2/10 MAINT: active DRIFT: high
▸ 4 reusable components found
activecm/BeaKer ★ 303 43 APPLICATION

BeaKer is a self-contained threat-hunting deployment for Windows network beacon detection. It provisions an Elasticsearch/Kibana backend with Docker Compose, configures Windows endpoints via a PowerShell agent installer, and ships prebuilt index templates, ingest pipelines, and Kibana dashboards for Sysmon event data. The dominant character is an application/infrastructure project: the core artifacts are deployment scripts, Ansible playbooks, and ELK configuration rather than a library or data analysis framework. A secondary data-pipeline nature is visible in the Elasticsearch ingest pipelines that normalize Windows Security/PowerShell/Sysmon events into ECS, and in the export/import tooling for dashboards and indices.

RATING: 6.6/10 MAINT: active DRIFT: medium
▸ 2 reusable components found
feihua/zero-admin ★ 985 228 APPLICATION

This is a large, scaffolded e-commerce backend system built with the go-zero microservice framework. It implements a full suite of admin and frontend APIs for managing products, orders, members, coupons, content, and system settings. The architecture is microservices-based with separate RPC services for each domain (sys, cms, oms, pms, sms, ums) plus search, consumer, and job services. The codebase is heavily generated using goctl and gorm.io/gen, resulting in a high volume of boilerplate CRUD logic files—many of which are still stubs containing only 'todo: add your logic here' comments. While the system demonstrates a consistent pattern for service decomposition and provides reusable utility packages (pkg/errorx, pkg/time_util, pkg/mq), the majority of business logic is incomplete, and there are signs of technical drift such as duplicate JWT library usage, mixed ORM approaches, and hardcoded configuration values. The project is actively maintained but still in a work-in-progress state, with the README warning of significant backend changes and incomplete frontend adaptation.

RATING: 6.4/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
chaosopen/elasticsearch_in_action ★ 298 12 APPLICATION

This repository is the source code for an Elasticsearch tutorial e-book, built with VuePress to generate a static website. The content covers Elasticsearch 7.9.3, including installation, basic and advanced operations, architecture, and practical examples. The site is deployed via a simple shell script that builds the VuePress site and pushes to GitHub Pages. While the repository primarily serves as educational material, it also includes standard VuePress configuration and deployment scripts typical of documentation sites.

RATING: 6.4/10 MAINT: active DRIFT: low
▸ 1 reusable components found
amundsen-io/amundsen ★ 4785 959 APPLICATION

Amundsen is an archived data discovery and metadata management platform. The codebase is structured as a multi-service monorepo: a Flask+React frontend, a Flask metadata service backed by graph databases, a Flask Elasticsearch search service, a shared common models library, and the databuilder ETL framework. In production it ingests metadata from databases, warehouses, dashboards, and feature stores through pluggable extractor/transformer/loader/publisher pipelines, publishes it to Neo4j/Neptune/Atlas/MySQL and Elasticsearch, and exposes search, table/dashboard/feature details, lineage, tags, badges, owners, quality checks, and previews through REST APIs and a React/Redux UI. The databuilder component is a genuinely library-quality ETL framework with clean interfaces, serialization abstractions for multiple backends, and a large collection of source-specific connectors. The metadata and search services are conventional Flask REST APIs, while the frontend is a large React application organized around Redux ducks and Redux-Saga async flows. Because of its data-ingestion components, the repository has a hybrid character, but the dominant character is an application platform rather than a data-research project. The project has been archived and shows significant technical drift: it pins Elasticsearch 7.13, Neo4j 4.4, and Node 12 (EOL), contains deprecated preview and search-publisher paths, has duplicated logic across services, and receives no active dependency or security updates. It remains useful as a reference architecture and as a source of extractable engineering patterns, but it is not a safe choice for new production deployments without a fork and substantial modernization.

RATING: 6.1/10 MAINT: archived DRIFT: high
▸ 4 reusable components found
thomas545/ecommerce_api ★ 297 97 APPLICATION

This is a Django REST Framework-based ecommerce API that provides typical ecommerce functionality: user authentication (JWT, social login via allauth), product CRUD with hierarchical categories, shopping cart, checkout, order management, real-time notifications via WebSockets and FCM, chat via Django Channels, SMS verification via Twilio, and product search via Elasticsearch (partially configured with both Haystack and elasticsearch-dsl). The architecture is monolithic with separate Django apps for each domain. It uses Celery for async tasks (email sending, scheduled jobs) with Redis as broker, and Redis for caching. The codebase shows evidence of organic growth with some reusable patterns (caching pagination, JWT middleware for Channels), but also contains significant technical debt: a bloated requirements.txt (pip freeze of entire environment), commented-out code, incomplete integrations (Elasticsearch indexing is stubbed), and reliance on deprecated Django 2.2 APIs (ugettext_lazy). The project appears to have been last actively developed around 2020 and is now in a stale state with high drift from current Django/DRF versions.

RATING: 5.7/10 MAINT: stale DRIFT: high
▸ 3 reusable components found
── end of results ──
$ submit: