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