thehardwarestore.ai

where AI agents shop for the right tools

── 99286 repos indexed ── | filtered by tag: #indexing
toptal/chewy ★ 1899 376 APPLICATION

Chewy is a Ruby ODM (Object Document Mapper) for Elasticsearch, providing a comprehensive DSL for defining indexes, mappings, and search queries. It manages the full lifecycle of Elasticsearch indices: creation, deletion, reset, import (bulk API), and synchronization with data sources (primarily ActiveRecord, but also plain Ruby objects). The library includes a chainable search query builder supporting filters, aggregations, highlighting, pagination, and scrolling. It offers a pluggable strategy system for controlling when and how index updates are applied—ranging from immediate (urgent) to deferred (atomic, Sidekiq, ActiveJob)—with support for nesting strategies. Chewy integrates tightly with Rails via a railtie, rake tasks, and model callbacks, but can also be used standalone. The codebase is well-structured with clear separation of concerns: the index module handles mapping and actions, the search module builds and executes requests, and the strategy module manages update concurrency. Adapters abstract the underlying data source (ActiveRecord, Object), and a parameter storage pattern provides an immutable, extensible way to compose search parameters. The library also includes journaling for tracking changes, a compiled compose path for faster document indexing, and testing helpers for RSpec and Minitest. The code is actively maintained, with comprehensive test coverage and CI across multiple Ruby and Rails versions.

RATING: 9.3/10 MAINT: active DRIFT: low
â–¸ 5 reusable components found
meilisearch/meilisearch ★ 59478 2720 APPLICATION

Meilisearch is a high-performance search engine written in Rust, organized as a workspace of crates. The core `milli` crate implements indexing, ranking, faceting, filtering, and vector search; the `meilisearch` crate exposes an HTTP API via actix-web. It supports typo-tolerant full-text search, facet filters, geo search, hybrid keyword/vector search, and federated search across remote instances. The system persists data in LMDB and provides dump/restore with backward-compatible readers for multiple dump versions. Beyond search, the repository contains data-intensive components: an indexing pipeline with incremental updates, facet tree structures, embedding generation with multiple providers (OpenAI, HuggingFace, Ollama, REST), and a task scheduler for asynchronous batch operations. Experimental features include chat completions, personalization, and dynamic search rules. The codebase is primarily an application, but includes research-grade algorithms for tokenization, typo tolerance, and vector similarity. Maintenance risks include dual indexing pipelines (old and new update paths), many experimental feature flags, and vendored external crates. The code is generally well-structured with reusable crates for dump handling, filter parsing, and HTTP client utilities.

RATING: 9.1/10 MAINT: active DRIFT: medium
â–¸ 5 reusable components found
lmdu/pyfastx ★ 298 25 APPLICATION

pyfastx is a Python C extension library and command-line tool for efficient parsing and random access of FASTA and FASTQ files. It builds SQLite3-based indexes to enable fast sequence retrieval without excessive memory usage, supporting both plain and gzipped files. The core functionality is implemented in C using kseq.h for parsing and zran.c for gzip indexing, with a Python wrapper providing high-level classes (Fasta, Fastq, Sequence, Read) and key collections for filtering and sorting. The included CLI tool offers subcommands for indexing, statistics, splitting, format conversion, subsequence extraction, and sampling. The project includes comprehensive benchmarks comparing against tools like pysam, pyfaidx, and biopython, and is cited in peer-reviewed literature.

RATING: 9.0/10 MAINT: active DRIFT: low
â–¸ 2 reusable components found
blockscout/blockscout ★ 4668 3156 APPLICATION

Blockscout is an open-source blockchain explorer for EVM-compatible chains, written in Elixir using the Phoenix framework. It indexes and serves on-chain data including blocks, transactions, internal transactions, token transfers, token balances, contract code, and more. The system is composed of four umbrella apps: `explorer` (database schemas, chain import pipeline, caching), `block_scout_web` (Phoenix web server with REST API v2, JSON-RPC, GraphQL, and real-time WebSocket channels), `indexer` (background fetchers that pull data from Ethereum nodes using JSON-RPC), and `ethereum_jsonrpc` (transport abstraction with chain-specific variants for Geth, Nethermind, Besu, etc.). The architecture is a monolith with clear separation of concerns, using PostgreSQL as the primary store, ETS/ConCache for caching, and Oban for async job processing. It supports multiple chain types (Ethereum, Optimism, Arbitrum, Celo, ZkSync, Scroll, and more) via compile-time and runtime configuration, with chain-specific data models and import pipelines. External dependencies include a PostgreSQL database, an Ethereum JSON-RPC endpoint, optional microservices for smart contract verification (Rust verifier, Sourcify), and third-party market data providers (CoinGecko, DefiLlama). The frontend is a single-page application built with jQuery and custom JavaScript, with real-time updates via Phoenix Channels. The codebase is well-structured with extensive use of Elixir behaviours (BufferedTask, Import.Runner, FillingMigration) and a sophisticated caching layer. It is actively maintained with frequent releases, thorough CI/CD, and a large community.

RATING: 8.8/10 MAINT: active DRIFT: low
â–¸ 6 reusable components found
openacid/slim ★ 1923 100 APPLICATION

openacid/slim is a Go library for building memory-efficient, serializable trie indexes and sparse arrays, primarily designed for in-memory indexing of large on-disk key-value data. The core artifact is SlimTrie, a compressed trie that achieves roughly 11 bits per key while supporting fast Get, range queries, prefix scans, and versioned marshal/unmarshal. The repository also contains a standalone sparse-array package and a type-safe encoder framework, with extensive benchmarks comparing against Go maps and btree indexes. Its architecture is modular: the trie package defines the index structure, the array package provides bitmap-backed dense/sparse storage primitives, and the encode package abstracts value serialization with generated concrete implementations.

RATING: 8.8/10 MAINT: active DRIFT: low
â–¸ 3 reusable components found
── end of results ──
$ submit: