- Skip the execution phase and reduce server load by caching execution results in-memory. - Customize cache entry time to live based on fields and types within the execution result. - Automatically invalidate the cache based on mutation selection sets. -
Heavily inspired by @envelop/response-cache
- Supports redis cache for `@envelop/response-cache` plugin - Suitable for serverless deployments where the LRU In-Memory Cache is not possible
- Supports [Cloudflare KV](https://developers.cloudflare.com/kv/) cache for `@envelop/response-cache` plugin - Suitable for graphql servers running on [Cloudflare Workers](https://workers.cloudflare.com/)
Firestore cache implementation for @envelop/response-cache plugin
This plugins adds simple LRU caching to your `validate`, to improve performance by caching the validation result.
This is the core package for Envelop. You can find a complete documentation here: https://github.com/graphql-hive/envelop
A clone of @envelop/response-cache with async shouldCacheResult
This plugins adds simple LRU caching to your `parse`, to improve performance by caching the parsed result.
Parses Cache-Control and other headers. Helps building correct HTTP caches and proxies
This package contains utility functions and types to ease the use of instrumentation accross Envelop, Yoga, whatwg-node and Hive Gateway plugins.
HTTP response freshness testing
This plugin collects errors and performance tracing for your execution flow, and reports it to [Sentry](https://sentry.io).
This plugins replaces the original `execute` of GraphQL with [`graphql-jit`](https://github.com/zalando-incubator/graphql-jit).
This plugin injects the `NoSchemaIntrospectionCustomRule` validation rule exported from the `graphql` module to the validation phase for disabling introspection.
This plugins uses [`graphql-rate-limit`](https://github.com/teamplanes/graphql-rate-limit#readme) in order to limit the rate of calling queries and mutations.
This plugin tracks the complete execution flow, and reports metrics using StatsD (based on `hot-shots`).
Apollo Server full query response cache
This plugins uses [`graphql-depth-limit`](https://www.npmjs.com/package/graphql-depth-limit) in order to limit the depth of executed selection sets (by injecting a new GraphQL validation rule into your execution).
Extended validation plugin adds support for writing GraphQL validation rules, that has access to all `execute` parameters, including variables.
This plugin allows you to hook into resolves of every field in the GraphQL schema.
This plugins injects a validation rule into the validation phase that only allows the specified operation types (e.g. `subscription`, `query` or `mutation`).
This plugin tracks the complete execution flow, and reports metrics using Prometheus tracing (based on `prom-client`).
This plugin caches arbitrary values within the request scope to optimize execution flow