Skip to content

tRPC v12 isn’t on npm yet. The @trpc12/* packages on this site can’t be installed until it’s released. Use v11 today

tRPC

Deno

Deno.serve with handler.fetch, and handler.websocket for upgrades.

Deno.serve((request) => {
  if (request.headers.get('upgrade') !== 'websocket')
    return handler.fetch(request);
  const upgrade = Deno.upgradeWebSocket(request);
  handler.websocket(upgrade.socket, { request });
  return upgrade.response;
});

Deno's WebSocket is the web-standard one, so handler.websocket serves it directly: subscriptions, connectionParams and keep-alive pings work as they do on Node.