# GraphQL over Server-Sent Events > graphql-sse is the reference implementation of the GraphQL over Server-Sent Events protocol: a zero-dependency, HTTP/1 safe server handler and client for queries, mutations and subscriptions over SSE, with adapters for http, http2, express, fastify, koa and fetch. ## Guides - [Get Started](https://the-guild.dev/graphql/sse/guides.md): Install graphql-sse, serve GraphQL over Server-Sent Events with the built-in handler on http, http2, express, fastify, koa or fetch, and connect a client. - [Recipes](https://the-guild.dev/graphql/sse/guides/recipes.md): Short, copy-paste code snippets for common graphql-sse client and server use cases, from EventSource, Relay, urql and Apollo clients to auth, dynamic schemas and persisted queries. ## API Reference - [Overview](https://the-guild.dev/graphql/sse/docs.md): Every module, function, class, interface and type exported by graphql-sse, generated from the source. - [client](https://the-guild.dev/graphql/sse/docs/modules/client.md): Everything exported by graphql-sse/client: functions, classes, interfaces and types. - [common](https://the-guild.dev/graphql/sse/docs/modules/common.md): Everything exported by graphql-sse/common: functions, classes, interfaces and types. - [handler](https://the-guild.dev/graphql/sse/docs/modules/handler.md): Everything exported by graphql-sse/handler: functions, classes, interfaces and types. - [use/express](https://the-guild.dev/graphql/sse/docs/modules/use_express.md): Everything exported by graphql-sse/use/express: functions, classes, interfaces and types. - [use/fastify](https://the-guild.dev/graphql/sse/docs/modules/use_fastify.md): Everything exported by graphql-sse/use/fastify: functions, classes, interfaces and types. - [use/fetch](https://the-guild.dev/graphql/sse/docs/modules/use_fetch.md): Everything exported by graphql-sse/use/fetch: functions, classes, interfaces and types. - [use/http](https://the-guild.dev/graphql/sse/docs/modules/use_http.md): Everything exported by graphql-sse/use/http: functions, classes, interfaces and types. - [use/http2](https://the-guild.dev/graphql/sse/docs/modules/use_http2.md): Everything exported by graphql-sse/use/http2: functions, classes, interfaces and types. - [use/koa](https://the-guild.dev/graphql/sse/docs/modules/use_koa.md): Everything exported by graphql-sse/use/koa: functions, classes, interfaces and types. - [client.NetworkError](https://the-guild.dev/graphql/sse/docs/classes/client.NetworkError.md): NetworkError (graphql-sse/client): A network error caused by the client or an unexpected response from the server. - [client.Client](https://the-guild.dev/graphql/sse/docs/interfaces/client.Client.md): Client (graphql-sse/client): Dispose of the client, destroy connections and clean up resources. - [client.ClientOptions](https://the-guild.dev/graphql/sse/docs/interfaces/client.ClientOptions.md): ClientOptions (graphql-sse/client): The AbortController implementation to use. - [client.EventListeners](https://the-guild.dev/graphql/sse/docs/interfaces/client.EventListeners.md): EventListeners (graphql-sse/client): Emitted when the client has successfully connected to the server. - [common.ExecutionPatchResult](https://the-guild.dev/graphql/sse/docs/interfaces/common.ExecutionPatchResult.md): ExecutionPatchResult, exported by graphql-sse/common. - [common.ExecutionResult](https://the-guild.dev/graphql/sse/docs/interfaces/common.ExecutionResult.md): ExecutionResult, exported by graphql-sse/common. - [common.RequestParams](https://the-guild.dev/graphql/sse/docs/interfaces/common.RequestParams.md): RequestParams (graphql-sse/common): Parameters for GraphQL's request for execution. - [common.Sink](https://the-guild.dev/graphql/sse/docs/interfaces/common.Sink.md): Sink (graphql-sse/common): A representation of any set of values over any amount of time. - [common.StreamMessage](https://the-guild.dev/graphql/sse/docs/interfaces/common.StreamMessage.md): StreamMessage (graphql-sse/common): Represents a message in an event stream. - [handler.HandlerOptions](https://the-guild.dev/graphql/sse/docs/interfaces/handler.HandlerOptions.md): HandlerOptions (graphql-sse/handler): Authenticate the client. Returning a string indicates that the client - [handler.Request](https://the-guild.dev/graphql/sse/docs/interfaces/handler.Request.md): Request (graphql-sse/handler): Server agnostic request interface containing the raw request - [handler.RequestHeaders](https://the-guild.dev/graphql/sse/docs/interfaces/handler.RequestHeaders.md): RequestHeaders (graphql-sse/handler): The incoming request headers the implementing server should provide. - [handler.ResponseInit](https://the-guild.dev/graphql/sse/docs/interfaces/handler.ResponseInit.md): ResponseInit (graphql-sse/handler): Server agnostic response options (ex. status and headers) returned from - [use/express.RequestContext](https://the-guild.dev/graphql/sse/docs/interfaces/use_express.RequestContext.md): RequestContext, exported by graphql-sse/use/express. - [use/fastify.RequestContext](https://the-guild.dev/graphql/sse/docs/interfaces/use_fastify.RequestContext.md): RequestContext, exported by graphql-sse/use/fastify. - [use/fetch.RequestContext](https://the-guild.dev/graphql/sse/docs/interfaces/use_fetch.RequestContext.md): RequestContext, exported by graphql-sse/use/fetch. - [use/http.RequestContext](https://the-guild.dev/graphql/sse/docs/interfaces/use_http.RequestContext.md): RequestContext, exported by graphql-sse/use/http. - [use/http2.RequestContext](https://the-guild.dev/graphql/sse/docs/interfaces/use_http2.RequestContext.md): RequestContext, exported by graphql-sse/use/http2. ## Changelog