|
| 1 | +--- |
| 2 | +title: GraphQL Foundation adopts graphql-http |
| 3 | +tags: ["newsletter"] |
| 4 | +layout: blog |
| 5 | +date: 2022-11-07 |
| 6 | +byline: GraphQL Foundation |
| 7 | +permalink: /blog/2022-11-07-graphql-foundation-graphql-http |
| 8 | +--- |
| 9 | + |
| 10 | +# GraphQL Foundation adopts graphql-http |
| 11 | + |
| 12 | +GraphQL is most commonly served over HTTP. However despite GraphQL being well |
| 13 | +specified, this HTTP transport is not. To correct for this, the GraphQL working |
| 14 | +group has been working on the [GraphQL over HTTP](https://graphql.github.io/graphql-over-http/draft/) |
| 15 | +specification. |
| 16 | + |
| 17 | +Alongside a specification, we prefer a true implementation to have as a |
| 18 | +reference. This ensures the ideas we specify can be implemented well, and that |
| 19 | +as edge-cases arise in software we can ensure their solutions are reflected in |
| 20 | +the specification as well. |
| 21 | + |
| 22 | +For GraphQL over HTTP, this has nominally been [express-graphql](https://github.com/graphql/express-graphql). |
| 23 | +This package makes it easy to create a GraphQL serving endpoint from an express |
| 24 | +server. However as the Node community has grown over the years, alternatives to |
| 25 | +express have emerged and there is no longer one framework to align to. Also, as |
| 26 | +our maintenance bandwidth has focused on other projects, express-graphql has |
| 27 | +fallen behind. |
| 28 | + |
| 29 | +Luckily, thanks to the focused efforts of [Denis Badurina](https://github.com/enisdenjo), |
| 30 | +we have an alternative in [graphql-http](https://github.com/graphql/graphql-http). |
| 31 | +Denis has been part of the committee working on the GraphQL over HTTP |
| 32 | +specification, and sought to build a depenency-free compliant GraphQL server |
| 33 | +that works with most all existing Node and Deno HTTP frameworks. |
| 34 | + |
| 35 | +The decision was made to adopt the [graphql-http](https://github.com/graphql/graphql-http) |
| 36 | +project into the GraphQL Foundation (with Denis continuing as the lead |
| 37 | +maintainer), as well as to make it the official reference implementation of |
| 38 | +GraphQL over HTTP. |
| 39 | + |
| 40 | +We will be deprecating [express-graphql](https://github.com/graphql/express-graphql) |
| 41 | +as part of this change, and recommending those using it migrate to graphql-http. |
0 commit comments