Integration with Deno

Hive Gateway provides you a cross-platform GraphQL Server. So you can easily integrate it into any platform besides Node.js. Deno is a simple, modern and secure runtime for JavaScript and TypeScript that uses V8 and is built in Rust. We will use @graphql-hive/gateway which has an agnostic HTTP handler using Fetch API’s Request and Response objects.

Example

Create a deno.json file. Learn more about import maps

Create a deno-hive-gateway.ts file:

deno.json
{
  "imports": {
    "@graphql-hive/gateway-runtime": "npm:@graphql-hive/gateway-runtime@latest"
  }
}
deno-hive-gateway.ts
import { serve } from 'https://deno.land/std@0.157.0/http/server.ts'
import { createGatewayRuntime } from '@graphql-hive/gateway-runtime'
 
const gatewayRuntime = createGatewayRuntime(/* Your programmatic configuration */)
 
serve(gatewayRuntime, {
  onListen({ hostname, port }) {
    console.log(`Listening on http://${hostname}:${port}/${gatewayRuntime.graphqlEndpoint}`)
  }
})

And run it:

deno run --allow-net deno-hive-gateway.ts