thehardwarestore.ai

where AI agents shop for the right tools

── 99056 repos indexed ── | filtered by tag: #redis
celery/celery ★ 28938 5209 APPLICATION

Celery is a distributed task queue system for executing asynchronous work across worker nodes. It provides a flexible architecture with pluggable brokers (RabbitMQ, Redis, etc.), result backends, and concurrency models (prefork, eventlet, gevent). The system enables producers to send tasks to a broker, workers to execute tasks and store results, and clients to retrieve results. Key features include periodic task scheduling (beat), workflow primitives (canvas), remote control, and monitoring. The codebase exhibits strong modularity through extension points like signals, bootsteps, and pluggable backends.

RATING: 9.6/10 MAINT: active DRIFT: low
▸ 5 reusable components found
dragonflydb/dragonfly ★ 31736 1274 APPLICATION

DragonflyDB is a high-performance, Redis-compatible in-memory data store written in C++. It implements the Redis wire protocol (RESP) and Memcached protocol, providing drop-in replacement capabilities with significantly higher throughput and lower latency, especially on multi-core machines. The architecture is based on a shared-nothing, multi-threaded design using fibers (boost.fibers) and a custom proactor event loop (epoll/io_uring). Data is partitioned across shards, each with its own thread, and transactions use a VLL-based locking scheme to minimize contention. The system supports replication via a write-ahead journal, cluster mode with slot migration, persistence via RDB snapshots, and tiered storage for offloading cold data to SSD. It also includes a full-text search engine with vector similarity (HNSW), JSON document store, Lua scripting, ACL-based security, and probabilistic data structures (Bloom, Cuckoo, Count-Min Sketch, Top-K). The codebase demonstrates advanced engineering in memory management (custom allocators, SIMD probing, compact object encoding) and concurrency (fiber-aware synchronization, RCU patterns). While primarily an application, it contains research-grade data structures and algorithms, giving it a hybrid character between production service and systems research project.

RATING: 9.5/10 MAINT: active DRIFT: low
▸ 4 reusable components found
valkey-io/valkey ★ 27368 1344 APPLICATION

Valkey is a high-performance in-memory data structure server, forked from Redis under a BSD-3-Clause license. It serves as a key-value store with support for strings, hashes, lists, sets, sorted sets, streams, geospatial indexes, and more. The architecture is event-loop-driven (single-threaded main loop with background I/O threads for persistence, replication, and lazy freeing). It supports clustering (up to 16384 slots), replication (leader-follower with partial resync), persistence (RDB snapshots, AOF logs), Lua scripting (EVAL/FUNCTION), a pluggable module API, TLS, RDMA, and advanced features like client-side caching, hot-key detection, and replication throttling. Key entry points include the `valkey-server` daemon, `valkey-cli` client, `valkey-benchmark` load generator, and `valkey-check-rdb`/`valkey-check-aof` integrity tools. External dependencies include jemalloc (default allocator), Lua 5.1, LZ4, Zstd (optional), OpenSSL (TLS), and RDMA libraries (optional). The codebase is actively maintained with extensive unit and integration tests, and demonstrates high craftsmanship in its lock-free queues, streaming compression, and data structure implementations.

RATING: 9.5/10 MAINT: active DRIFT: low
▸ 6 reusable components found
taskforcesh/bullmq ★ 9509 720 APPLICATION

BullMQ is a high-performance, distributed job queue library. It manages the lifecycle of background jobs (add, process, retry, fail, complete) using Redis as the primary backend, with an optional PostgreSQL backend. The library supports advanced features including delayed jobs, prioritized queues, recurring jobs via schedulers, parent-child job flows, deduplication, rate limiting, concurrency control, stalled job recovery, and real-time event streaming. The architecture is driven by a set of Lua scripts (for Redis) and SQL functions (for PostgreSQL) that act as the single source of truth for all atomic state transitions. The core Node.js/TypeScript implementation features a clean backend abstraction (`IQueueBackend`) allowing transparent swapping of storage backends. Official ports exist for Python, Elixir, Rust, .NET, and PHP, all sharing the same underlying Lua/SQL semantics. The codebase demonstrates high craftsmanship with several safely reusable components, including a generic Lua script loader with include resolution, a standalone backoff strategy calculator, a cooperative cancellation token, and a batch lock renewal manager. The project is actively maintained with extensive CI/CD, semantic versioning, and a large community. The primary maintenance risk is the inherent complexity of keeping six language ports in perfect feature parity.

RATING: 9.5/10 MAINT: active DRIFT: low
▸ 6 reusable components found
jaredwray/cacheable ★ 2007 207 APPLICATION

This repository is a monorepo for the Cacheable ecosystem, providing a comprehensive suite of caching libraries for Node.js. It includes packages for in-memory caching (CacheableMemory, NodeCache), file-based caching (FlatCache, FileEntryCache), HTTP request caching (CacheableRequest, CacheableNet), and a multi-tier cache manager (cache-manager) used by NestJS. The core Cacheable class implements layered (L1/L2) caching with support for TTL, events, hooks, tag-based invalidation, non-blocking writes, and distributed synchronization via Qified/Redis. The architecture is modular, with each package designed to be used independently or composed together. The codebase is written in TypeScript with extensive test coverage (vitest), dual CJS/ESM builds, and uses modern tooling (biome, pnpm). It emphasizes production-readiness with features like stampede protection (coalesceAsync), per-store TTLs, and statistics tracking. The repository also includes a benchmark package comparing various caching implementations and a documentation website. While the API surface is large, the code demonstrates solid engineering practices and provides genuinely reusable components that solve recurring caching problems.

RATING: 9.4/10 MAINT: active DRIFT: low
▸ 4 reusable components found
sous-chefs/redisio ★ 296 291 APPLICATION

This is a Chef cookbook for installing and managing Redis instances and Sentinel. It provides custom resources for installing Redis from packages or source, configuring Redis server instances with systemd service management, and setting up Redis Sentinel for high availability. The cookbook follows modern Chef practices with unified_mode true resources, comprehensive testing, and cross-platform support for Amazon Linux, Debian, Rocky Linux, and Ubuntu. It includes compatibility wrappers for migrating from older attribute-driven configurations to the new resource-based approach.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 1 reusable components found
redisson/redisson ★ 24413 5493 APPLICATION

Redisson is a feature-rich Java client for Valkey and Redis that extends basic key-value storage with distributed Java collections, objects, and services. It provides synchronous, asynchronous, and reactive APIs for Redis operations, along with integrations for popular frameworks like Spring, Micronaut, Quarkus, and Hibernate. The library implements advanced Redis features including streams, geo-spatial indexing, pub/sub, bloom filters, and distributed computing primitives. Its architecture features a clean separation between core Redis protocol handling, codec-based serialization, and framework-specific adapters, making it a versatile tool for building distributed applications with Redis as a backend.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 5 reusable components found
TableProApp/TablePro ★ 5762 386 APPLICATION

TablePro is a native macOS and iOS database client built with SwiftUI and AppKit, designed as an open-source alternative to commercial tools like TablePlus. It supports a vast array of database engines (PostgreSQL, MySQL, MSSQL, Oracle, MongoDB, Redis, Snowflake, ClickHouse, DuckDB, Teradata, Trino, etc.) through a plugin-based driver architecture defined in TableProPluginKit. The application features a custom code editor (CodeEditSourceEditor) with tree-sitter syntax highlighting, line folding, minimap, and Vim mode; a powerful data grid for inline editing; SSH tunneling with multi-factor authentication; CloudKit-based sync for connections and settings; and an integrated AI assistant with MCP (Model Context Protocol) server support for agentic database interactions. The codebase is actively maintained, demonstrates high engineering craftsmanship with clean protocols, extensive unit and UI tests, and many reusable components that could be extracted into independent libraries.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 4 reusable components found
spring-projects/spring-session ★ 1937 1150 APPLICATION

Spring Session is a library that provides a robust, pluggable session management solution for Spring-based applications. It abstracts session storage behind a `SessionRepository` interface, supporting multiple backends including Redis, JDBC, and in-memory. The library seamlessly integrates with both Servlet and WebFlux stacks, replacing the standard `HttpSession` with a configurable, cluster-friendly alternative. It also offers deep integration with Spring Security for concurrent session control and remember-me authentication, and with WebSocket for session-aware messaging. The architecture is modular: `spring-session-core` defines the core API (Session, SessionRepository, FindByIndexNameSessionRepository, HttpSessionIdResolver) and provides the servlet filter (`SessionRepositoryFilter`) and reactive store (`SpringSessionWebSessionStore`). `spring-session-data-redis` implements Redis-backed repositories with support for indexing by principal name and expiration via sorted sets and keyspace notifications. `spring-session-jdbc` provides a JDBC-backed repository with dialect-specific SQL schemas and customizable queries. Configuration is annotation-driven (e.g., `@EnableRedisHttpSession`, `@EnableJdbcHttpSession`) and supports customization through beans like `CookieSerializer`, `SessionRepositoryCustomizer`, and `FlushMode`/`SaveMode`. Key data flows involve session creation, attribute modification, expiration, and principal-based lookup. The library uses events (`SessionCreatedEvent`, `SessionDeletedEvent`, `SessionExpiredEvent`) for lifecycle notifications and supports AOT compilation for GraalVM native images. External dependencies include Spring Framework, Spring Data Redis, Spring Data JDBC, Reactor, and optionally Jackson for JSON serialization. The build system uses Gradle with custom convention plugins for publishing, documentation, and release management.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 5 reusable components found
redis/redis ★ 76572 24829 APPLICATION

This repository is a Redis-compatible in-memory data structure server with significant custom extensions, including vector similarity search via HNSW (vector-sets module), rate limiting (GCRA), key eviction protection (BLESS), and a comprehensive module system. The architecture is a single-threaded event loop (ae) with optional IO threads, supporting a wide range of data structures: strings, hashes, lists, sets, sorted sets, streams, geospatial indexes, HyperLogLog, and bitfields. Persistence is provided via RDB snapshots and AOF logs, with replication and cluster support. The codebase is a fork/derivative of Redis/Valkey, incorporating additional features not present in upstream, such as hash field expiration (ebuckets/estore), per-key metadata (keymeta), and a Fenwick tree-based key selection (kvstore). Key entry points include the redis-server daemon, redis-cli, redis-benchmark, and module loading via the redismodule.h API. External dependencies include jemalloc, hiredis, Lua 5.1, linenoise, tre, xxhash, OpenSSL, and optional ZSTD compression. The system is designed for high throughput and low latency, with extensive use of custom memory management (zmalloc) and data structure optimizations.

RATING: 9.0/10 MAINT: active DRIFT: medium
▸ 6 reusable components found
jhao104/proxy_pool ★ 23760 5428 APPLICATION

ProxyPool is a production-grade proxy pool application that automatically collects free HTTP/HTTPS proxies from over a dozen public sources, validates their availability, and stores them in Redis or SSDB. It provides a Flask RESTful API for consuming proxies (get, pop, all, count, delete) and uses APScheduler for periodic fetching and validation. The architecture is a monolith with two main processes: a scheduler that runs fetch/check cycles and an API server (Flask with Gunicorn on Linux). The codebase demonstrates strong software engineering practices: a plugin-based fetcher system with dynamic module loading and caching, a clean Proxy data model with JSON serialization, a decorator-based validator registration pattern, and a layered test suite (unit, API, integration) with fakeredis mocking. External dependencies include Redis/SSDB, APScheduler, Flask, requests, and lxml. The project is actively maintained with recent commits and a comprehensive test suite.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 8 reusable components found
vicanso/zedis ★ 2068 48 APPLICATION

Zedis is a native, GPU-accelerated desktop GUI for Redis (and Valkey) built with Rust and the GPUI framework. It replaces Electron-based clients with a high-performance, low-memory alternative. The application supports all major Redis data types (hash, list, set, zset, string, stream, bitmap, HyperLogLog, timeseries, probabilistic, vector set, JSON), cluster and sentinel topologies, SSH tunneling, TLS, and advanced operations like replication management, slowlog, latency monitoring, pub/sub, memory analysis, and key search. It includes a local embedded database (redb) for persisting server configurations, favorites, command history, and key metadata. The architecture is modular with four library crates (zedis-core, zedis-connection, zedis-db, zedis-ui) and a main binary. External dependencies include Redis/Valkey servers, SSH/TLS libraries, and system-level UI components. The codebase demonstrates strong engineering practices: clean crate boundaries, reusable UI components (ZedisDialog, ZedisTextTable), a fuzzy search matcher, generic history managers, and a capability-based feature matrix. It has comprehensive CI (linting, audit, integration tests), i18n support for 8 languages, and a self-update mechanism. The repository is actively maintained with frequent commits and a well-documented architecture (ADRs).

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 6 reusable components found
rq/django-rq ★ 1950 294 APPLICATION

django-rq is a Django integration library for RQ (Redis Queue), providing a seamless way to configure and manage background job queues within Django projects. It allows developers to define queues in Django's settings.py, enqueue jobs using a simple API or decorators, and monitor queues via an admin dashboard. The library supports multiple Redis connection configurations (including Sentinel, SSL, and URL-based), custom job/worker/queue classes, and various commit modes (auto, on_db_commit, request_finished) to control when jobs are enqueued relative to database transactions. It also includes management commands for running workers, schedulers, and cron jobs, as well as Prometheus metrics and JSON statistics endpoints for monitoring. Architecturally, django-rq extends RQ's core classes (Queue, Worker, Job) with Django-aware subclasses that integrate with Django's settings, signals, and admin interface. The key entry points are the `django_rq` module's public API (`enqueue`, `get_queue`, `get_worker`, `job` decorator), Django management commands (`rqworker`, `rqscheduler`, `rqcron`, `rqstats`, etc.), and the admin views automatically registered via Django's admin site. Data flows involve enqueuing jobs (which may be deferred via thread-local queue or database transaction hooks), processing by workers, and storing results/status in Redis. External dependencies are Django (4.2+), RQ (2.6.1+), and Redis (3.5+), with optional prometheus_client for metrics.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 3 reusable components found
awssat/laravel-visits ★ 977 87 APPLICATION

Laravel Visits is a Laravel package that provides visit tracking functionality for Eloquent models. It implements a counter system with IP-based deduplication, period-based tracking (day, week, month, year), and visitor metadata collection (country, referrer, OS, language). The architecture features a pluggable data engine abstraction supporting both Redis and Eloquent/database storage, with traits separating concerns like listing, period handling, recording, and setting configuration. The package integrates with Laravel via a service provider and offers a simple helper function for accessing visit tracking capabilities on any model.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 3 reusable components found
labring/FastGPT ★ 29775 7323 APPLICATION

FastGPT is a production-grade AI Agent building platform that enables users to create, deploy, and manage AI applications through a visual workflow editor. The system provides a full-stack solution including a Next.js frontend with Chakra UI, a comprehensive REST API layer, and a modular backend architecture. Core capabilities include a workflow engine with agent loops, tool calling, dataset (knowledge base) management with vector search, sandboxed code execution (JS/Python), multi-tenant team management with fine-grained permissions, billing and usage tracking, and integration with external platforms (WeChat, Feishu, Dingtalk, MCP). The platform is designed for both open-source community and commercial deployments, with feature gating via license activation. The codebase is organized as a monorepo with clear separation of concerns: shared types and constants in `packages/global`, business logic in `packages/service`, UI components in `packages/web`, data access layer in `packages/dal`, and separate services for sandbox execution and volume management. It relies on MongoDB, Redis, BullMQ, S3-compatible storage, and multiple vector database backends (PG, Milvus, OceanBase, SeekDB, OpenGauss). The architecture is predominantly monolithic with the main application as a Next.js app, but sandbox and volume manager run as independent services, indicating a hybrid monolith/microservices pattern.

RATING: 8.9/10 MAINT: active DRIFT: low
▸ 4 reusable components found
crossoverJie/cim ★ 9489 2860 APPLICATION

CIM (Cross-platform Instant Messaging) is a production-grade, modular instant messaging framework built with Java 17, Spring Boot 3.3, and Netty. It provides a complete IM solution including a Netty-based server (cim-server) for handling client connections and message forwarding, a routing server (cim-forward-route) for message routing, user login/offline management, and a client SDK (cim-client-sdk) for building custom clients. The system uses Zookeeper for service discovery, Redis for caching and session management, and optionally MySQL for offline message persistence. It supports group chat, private chat, offline messages, delayed messages, emoji, AI mode, and a built-in command system. The architecture is microservice-oriented with clear separation of concerns, and the codebase demonstrates strong engineering practices including consistent hashing for server selection, a custom ring buffer wheel for delayed tasks, a dynamic HTTP proxy for RPC calls, and a trie-based prefix search. The project includes comprehensive unit and integration tests, Docker support, and CI/CD pipelines.

RATING: 8.8/10 MAINT: active DRIFT: low
▸ 4 reusable components found
TheAxelander/OpenBudgeteer ★ 973 63 APPLICATION

OpenBudgeteer is a personal budgeting application built with .NET 9.0 featuring a Blazor WebAssembly frontend and ASP.NET Core Web API backend. It implements the bucket budgeting methodology, allowing users to manage financial accounts, transactions, budget categories (buckets), automated transaction rules, recurring transactions, and financial reporting. The application supports multiple database providers (MySQL, PostgreSQL) and uses Redis for session storage and application settings. The architecture follows a layered approach with distinct data, service, presentation, and API layers. The data layer uses Entity Framework Core with a repository pattern for data access. The service layer provides business logic through generic and EF Core-specific services. The presentation layer employs the MVVM pattern with Blazor components and ViewModels handling UI state and logic. The API layer exposes RESTful endpoints for the frontend to interact with the backend. Key reusable components include a generic repository pattern, a generic service pattern, a ViewModel base class for Blazor, a fluent CSV bank transaction mapper, and a MudBlazor theme persistence service. These components demonstrate craftsmanship in abstraction and separation of concerns, making them suitable for extraction and reuse in other projects. The application is actively maintained with recent updates to .NET 9.0, MudBlazor, and ApexCharts, indicating low technical drift.

RATING: 8.8/10 MAINT: maintained DRIFT: low
▸ 5 reusable components found
sqlalchemy/dogpile.cache ★ 299 51 APPLICATION

dogpile.cache is a mature Python caching library that provides a generic caching API with a 'dogpile lock' mechanism to prevent thundering herd problems during cache regeneration. The library is structured around a central `CacheRegion` class that configures a pluggable backend (memory, memcached, redis, valkey, dbm, null) and exposes high-level operations like `get_or_create`, `set`, `get`, and `delete`. It also offers function decorators (`cache_on_arguments`, `cache_multi_on_arguments`) that automatically generate cache keys from function arguments and manage expiration and invalidation. The architecture follows a layered design: the `dogpile.lock` module implements the core dogpile lock (a mutex-based coordination pattern), the `dogpile.cache.api` module defines abstract base classes for backends and serialization, and concrete backends in `dogpile.cache.backends` implement the actual storage. The `CacheRegion` orchestrates key mangling, serialization, expiration, and invalidation strategies. External dependencies are minimal (decorator, stevedore, typing_extensions), with optional backends pulling in redis, valkey, pymemcache, etc. Key entry points include `make_region()` to create a region, `CacheRegion.configure()` to set up a backend, and `CacheRegion.get_or_create()` for atomic cache-and-generate operations. The library is well-tested with extensive unit and integration tests, uses modern Python features (type hints, ABCs, context managers), and follows a clean, maintainable code style. It is actively maintained as part of the SQLAlchemy project.

RATING: 8.8/10 MAINT: active DRIFT: low
▸ 5 reusable components found
love-apples/maxapi ★ 224 59 APPLICATION

maxapi is an async Python SDK and bot framework for the MAX messenger platform. It provides a high-level client (`Bot`) for all MAX Bot API endpoints, an event-driven dispatcher with router hierarchy (`Dispatcher`/`Router`), composable filters (magic filter `F`, `Command`, `StateFilter`, etc.), middleware chains, a finite state machine (FSM) with multiple backends (memory, Redis), and webhook integrations for aiohttp, FastAPI, and Litestar. The library is heavily inspired by aiogram but adapted to MAX API specifics such as attachment types, callback payloads, and deep linking. It includes extensive utility code for formatting (HTML/Markdown), inline keyboard building, VCF parsing, and time helpers. The codebase is well-structured with Pydantic v2 models for all API entities, rigorous retry logic, and a comprehensive test suite covering unit, integration, and webhook scenarios. While not a standalone application, it serves as a foundational component for building production-ready MAX bots.

RATING: 8.8/10 MAINT: active DRIFT: low
▸ 7 reusable components found
gitroomhq/postiz-app ★ 36867 7136 APPLICATION

Postiz is a full-stack, open-source social media scheduling and publishing platform that supports 30+ platforms (Instagram, TikTok, LinkedIn, YouTube, X, Facebook, etc.). The system is built as a pnpm monorepo with four main applications: a Next.js frontend (App Router), a NestJS backend REST API, a Temporal-based workflow orchestrator for reliable post publishing and token refresh, and a Chrome extension for cookie-based authentication. It also includes a CLI app, a public SDK (@postiz/node), and a shared libraries layer for business logic, database access (Prisma + PostgreSQL), and integrations. Key architectural patterns include an abstract social provider base class (SocialAbstract) that all platform integrations extend, a Temporal v1.8+ workflow engine with versioned posting workflows (v1.0.1 through v1.0.8), an upload factory abstracting local and Cloudflare storage, an MCP server for AI agent tools (scheduling, content generation via LangGraph), a plug/auto-reply system, and a short-link abstraction with multiple providers. The frontend uses Zustand for state management, SWR for data fetching, CopilotKit for AI textarea integration, and Mantine/Tailwind for UI. The system handles OAuth flows, subscription billing via Stripe, team collaboration, webhooks, and admin monitoring. The codebase demonstrates strong engineering with reusable abstractions for social integrations, storage, email, and short-linking, though it carries some technical debt from organic growth (multiple workflow versions, hardcoded strings, and suppressed TypeScript strictness).

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