awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
graphql avatar

graphql/dataloader

0
View on GitHub↗
13,380 stars·514 forks·JavaScript·MIT·18 views

Dataloader

DataLoader is a utility that collects individual data loads into a single batch and caches results to minimize redundant backend requests. It operates on a batch-and-cache architecture, where multiple data lookups within a single execution frame are grouped together and dispatched as one request, with the results stored in memory for instant retrieval on subsequent calls.

The utility distinguishes itself through several key capabilities. It supports per-key error handling, allowing partial failures within a batch without rejecting the entire operation. A cache priming mechanism lets developers pre-populate the cache with known key-value pairs, while explicit cache invalidation methods enable clearing specific keys or the entire cache to force fresh data loads. The cache store is pluggable, allowing the default in-memory Map to be replaced with alternative implementations such as an LRU cache. A scheduler-based dispatch system provides control over when accumulated loads are sent as a batch, supporting manual triggering or delayed execution.

The broader capability surface includes batch data loading, caching data lookups, and custom cache strategies. The documentation covers configuration for customizing batch scheduling and swapping cache stores, as well as methods for loading multiple keys and clearing cached entries.

Features

  • Data Batching and Caching Utilities - Collects multiple data loads into a single batch and caches results to reduce backend requests.
  • Batched Data Loading - Collects multiple individual data requests into a single batch to reduce backend round trips.
  • Request Batching - Collects individual data loads into batches and caches results to minimize redundant backend requests.
  • Resolved Value Caching - Cache loaded values in memory so repeated key lookups resolve instantly without a backend call.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI
  • Key-Value Batching - Accepts an array of keys and resolves each to its value or an error, handling partial failures.
  • Custom Batch Triggers - Controls when a batch of collected loads is dispatched, enabling manual triggering or delayed execution.
  • Cache Priming Mechanisms - Provides a cache priming mechanism to pre-populate the cache with known key-value pairs.
  • Cache Priming - Pre-populates the cache with known key-value pairs to avoid unnecessary backend requests for expected data.
  • Cache Clearing - Clear cached entries by removing a specific key or the entire cache to force fresh data loads.
  • Pluggable Cache Implementations - Replaces the default in-memory cache with alternative implementations like LRU to manage memory.
  • Pluggable Cache Stores - Replaces the default in-memory Map with any cache implementation, such as an LRU cache.
  • Cache Priming Operations - Primes the cache with known key-value pairs so future loads return immediately without a backend request.
  • Cache Invalidation - Provides methods to clear specific keys or the entire cache to force fresh data loads.
  • Load Dispatch Schedulers - Uses a custom scheduler to control when accumulated loads are dispatched as a batch.
  • Custom Batch Dispatch Schedulers - Controls when batched loads are dispatched through custom schedulers for manual or delayed execution.
  • Partial List Error Handling - Resolves each key individually in a batch, allowing partial failures without rejecting the entire batch.
  • Pluggable Cache Backends - Allows swapping the default in-memory Map cache with any external cache implementation.
  • Star history

    Star history chart for graphql/dataloaderStar history chart for graphql/dataloader

    How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

    Frequently asked questions

    What does graphql/dataloader do?

    DataLoader is a utility that collects individual data loads into a single batch and caches results to minimize redundant backend requests. It operates on a batch-and-cache architecture, where multiple data lookups within a single execution frame are grouped together and dispatched as one request, with the results stored in memory for instant retrieval on subsequent calls.

    What are the main features of graphql/dataloader?

    The main features of graphql/dataloader are: Data Batching and Caching Utilities, Batched Data Loading, Request Batching, Resolved Value Caching, Key-Value Batching, Custom Batch Triggers, Cache Priming Mechanisms, Cache Priming.

    Which projects share features with graphql/dataloader?

    Projects with overlapping indexed features include: xiaolyuh/layering-cache — Layering-cache is a Java caching framework that combines local memory storage with centralized distributed remote… netflix/falcor — Falcor is a JavaScript library that models remote data as a single virtual JSON graph, providing a path-based query… hayes/pothos — Pothos is a code-first GraphQL schema builder and framework designed for type-safe development. It allows developers… sysgears/apollo-universal-starter-kit — Apollo Universal Starter Kit is a full-stack application boilerplate and starter template designed to accelerate… chillicream/hotchocolate — HotChocolate is a GraphQL server implementation for .NET that handles queries, mutations, and subscriptions over HTTP.… chillicream/graphql-platform — GraphQL Platform is a comprehensive GraphQL ecosystem for .NET that provides a spec-compliant server framework for…

    Projects sharing features with Dataloader

    These projects share indexed features with Dataloader. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
    • xiaolyuh/layering-cachexiaolyuh avatar

      xiaolyuh/layering-cache

      984View on GitHub↗

      Layering-cache is a Java caching framework that combines local memory storage with centralized distributed remote storage to handle high-concurrency read requests. It uses method interception via annotations to automatically check stored data and execute underlying logic only when a cache miss occurs. The framework maintains data consistency across multiple server instances through publish-subscribe messaging, offset-based queues, and hybrid push-pull synchronization. It prevents sudden traffic spikes and heavy concurrent loads by triggering background threads to automatically refresh expiri

      Java
      View on GitHub↗984
    • netflix/falcorNetflix avatar

      Netflix/falcor

      10,572View on GitHub↗

      Falcor is a JavaScript library that models remote data as a single virtual JSON graph, providing a path-based query engine for efficient client-side data retrieval and updates. It represents multiple remote data sources as a unified document where entities are accessed via globally unique identity paths. The system distinguishes itself by treating the remote data model as a virtual JSON resource, allowing the client to query specific paths without managing individual endpoints. It uses a reference-aware graph model to handle many-to-many relationships and prevents data duplication. Network ef

      JavaScript
      View on GitHub↗10,572
    • hayes/pothoshayes avatar

      hayes/pothos

      2,576View on GitHub↗

      Pothos is a code-first GraphQL schema builder and framework designed for type-safe development. It allows developers to construct schemas using typed definitions in TypeScript, eliminating the need for external code generation steps. The framework distinguishes itself through a dedicated data mapper that connects GraphQL types to relational databases and ORMs, such as Prisma, while optimizing query resolution. It provides a full implementation of the Relay specification, including global object identification and cursor-based pagination. The project covers several core capability areas, incl

      TypeScriptgraphqltypescript
      View on GitHub↗2,576
    • chillicream/hotchocolateChilliCream avatar

      ChilliCream/hotchocolate

      5,713View on GitHub↗

      HotChocolate is a GraphQL server implementation for .NET that handles queries, mutations, and subscriptions over HTTP. It provides code-first schema generation directly from C# classes and attributes, keeping the schema and business logic in sync without manual type definitions. The project also includes a GraphQL gateway that composes multiple GraphQL and REST endpoints into a single unified schema, along with a GraphQL IDE for exploring, testing, and debugging GraphQL APIs interactively. The project distinguishes itself through its comprehensive tooling ecosystem, which includes a GraphQL c

      C#
      View on GitHub↗5,713
    Compare all 30 related projects→