Skip to content

cloudflare-module ssr with trpc query + tanstack start not working #3356

Description

@rubenbase

Environment

app.config.ts

import { defineConfig } from '@tanstack/start/config';
import tsConfigPaths from 'vite-tsconfig-paths';
import { cloudflare } from 'unenv';
import nitroCloudflareBindings from 'nitro-cloudflare-dev';

export default defineConfig({
  server: {
    preset: 'cloudflare-module',
    unenv: cloudflare,
    modules: [nitroCloudflareBindings],
  },
  vite: {
    plugins: [
      tsConfigPaths({
        projects: ['./tsconfig.json'],
      }),
    ],
  },
});

Reproduction

Download the trpc starter: https://github.com/trpc/trpc/tree/main/examples/tanstack-start

Change app.config.ts with the cloudflare-module settings:

import { cloudflare } from 'unenv';
import nitroCloudflareBindings from 'nitro-cloudflare-dev';
// ...
 server: {
    preset: 'cloudflare-module',
    unenv: cloudflare,
    modules: [nitroCloudflareBindings],
  },

Describe the bug

go to posts -> select a post -> refresh -> it crashes because of the loader in the $postid route.

Screen.Recording.2025-05-08.at.8.38.09.PM.mov

Additional context

This works when deployed to other platforms like Vercel.

Logs

TRPCClientError: Stream closed

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions