Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

@tanstack/react-start-server

Package Overview
Dependencies
Maintainers
2
Versions
529
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@tanstack/react-start-server - npm Package Compare versions

Comparing version
1.120.5
to
1.121.0-alpha.1
+1
-1
dist/cjs/defaultRenderHandler.d.cts

@@ -1,1 +0,1 @@

export declare const defaultRenderHandler: import('@tanstack/start-server-core').HandlerCallback<import('@tanstack/router-core').AnyRouter, Promise<Response>>;
export declare const defaultRenderHandler: import('@tanstack/start-server-core').HandlerCallback<import('@tanstack/router-core').AnyRouter>;

@@ -46,2 +46,4 @@ "use strict";

onError: (error, info) => {
if (error instanceof Error && error.message === "ShellBoundaryError")
return;
console.error("Error in renderToPipeableStream:", error, info);

@@ -48,0 +50,0 @@ }

@@ -1,1 +0,1 @@

{"version":3,"file":"defaultStreamHandler.cjs","sources":["../../src/defaultStreamHandler.tsx"],"sourcesContent":["import { PassThrough } from 'node:stream'\nimport { isbot } from 'isbot'\nimport ReactDOMServer from 'react-dom/server'\n\nimport {\n defineHandlerCallback,\n transformPipeableStreamWithRouter,\n transformReadableStreamWithRouter,\n} from '@tanstack/start-server-core'\nimport { StartServer } from './StartServer'\n\nimport type { ReadableStream } from 'node:stream/web'\n\nexport const defaultStreamHandler = defineHandlerCallback(\n async ({ request, router, responseHeaders }) => {\n if (typeof ReactDOMServer.renderToReadableStream === 'function') {\n const stream = await ReactDOMServer.renderToReadableStream(\n <StartServer router={router} />,\n {\n signal: request.signal,\n },\n )\n\n if (isbot(request.headers.get('User-Agent'))) {\n await stream.allReady\n }\n\n const responseStream = transformReadableStreamWithRouter(\n router,\n stream as unknown as ReadableStream,\n )\n return new Response(responseStream as any, {\n status: router.state.statusCode,\n headers: responseHeaders,\n })\n }\n\n if (typeof ReactDOMServer.renderToPipeableStream === 'function') {\n const reactAppPassthrough = new PassThrough()\n\n try {\n const pipeable = ReactDOMServer.renderToPipeableStream(\n <StartServer router={router} />,\n {\n ...(isbot(request.headers.get('User-Agent'))\n ? {\n onAllReady() {\n pipeable.pipe(reactAppPassthrough)\n },\n }\n : {\n onShellReady() {\n pipeable.pipe(reactAppPassthrough)\n },\n }),\n onError: (error, info) => {\n console.error('Error in renderToPipeableStream:', error, info)\n },\n },\n )\n } catch (e) {\n console.error('Error in renderToPipeableStream:', e)\n }\n\n const responseStream = transformPipeableStreamWithRouter(\n router,\n reactAppPassthrough,\n )\n return new Response(responseStream as any, {\n status: router.state.statusCode,\n headers: responseHeaders,\n })\n }\n\n throw new Error(\n 'No renderToReadableStream or renderToPipeableStream found in react-dom/server. Ensure you are using a version of react-dom that supports streaming.',\n )\n },\n)\n"],"names":["defineHandlerCallback","jsx","StartServer","isbot","transformReadableStreamWithRouter","PassThrough","transformPipeableStreamWithRouter"],"mappings":";;;;;;;;AAaO,MAAM,uBAAuBA,gBAAA;AAAA,EAClC,OAAO,EAAE,SAAS,QAAQ,sBAAsB;AAC1C,QAAA,OAAO,eAAe,2BAA2B,YAAY;AACzD,YAAA,SAAS,MAAM,eAAe;AAAA,QAClCC,+BAACC,YAAAA,eAAY,QAAgB;AAAA,QAC7B;AAAA,UACE,QAAQ,QAAQ;AAAA,QAAA;AAAA,MAEpB;AAEA,UAAIC,MAAAA,MAAM,QAAQ,QAAQ,IAAI,YAAY,CAAC,GAAG;AAC5C,cAAM,OAAO;AAAA,MAAA;AAGf,YAAM,iBAAiBC,gBAAA;AAAA,QACrB;AAAA,QACA;AAAA,MACF;AACO,aAAA,IAAI,SAAS,gBAAuB;AAAA,QACzC,QAAQ,OAAO,MAAM;AAAA,QACrB,SAAS;AAAA,MAAA,CACV;AAAA,IAAA;AAGC,QAAA,OAAO,eAAe,2BAA2B,YAAY;AACzD,YAAA,sBAAsB,IAAIC,wBAAY;AAExC,UAAA;AACF,cAAM,WAAW,eAAe;AAAA,UAC9BJ,+BAACC,YAAAA,eAAY,QAAgB;AAAA,UAC7B;AAAA,YACE,GAAIC,MAAAA,MAAM,QAAQ,QAAQ,IAAI,YAAY,CAAC,IACvC;AAAA,cACE,aAAa;AACX,yBAAS,KAAK,mBAAmB;AAAA,cAAA;AAAA,YACnC,IAEF;AAAA,cACE,eAAe;AACb,yBAAS,KAAK,mBAAmB;AAAA,cAAA;AAAA,YAErC;AAAA,YACJ,SAAS,CAAC,OAAO,SAAS;AAChB,sBAAA,MAAM,oCAAoC,OAAO,IAAI;AAAA,YAAA;AAAA,UAC/D;AAAA,QAEJ;AAAA,eACO,GAAG;AACF,gBAAA,MAAM,oCAAoC,CAAC;AAAA,MAAA;AAGrD,YAAM,iBAAiBG,gBAAA;AAAA,QACrB;AAAA,QACA;AAAA,MACF;AACO,aAAA,IAAI,SAAS,gBAAuB;AAAA,QACzC,QAAQ,OAAO,MAAM;AAAA,QACrB,SAAS;AAAA,MAAA,CACV;AAAA,IAAA;AAGH,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EAAA;AAEJ;;"}
{"version":3,"file":"defaultStreamHandler.cjs","sources":["../../src/defaultStreamHandler.tsx"],"sourcesContent":["import { PassThrough } from 'node:stream'\nimport { isbot } from 'isbot'\nimport ReactDOMServer from 'react-dom/server'\n\nimport {\n defineHandlerCallback,\n transformPipeableStreamWithRouter,\n transformReadableStreamWithRouter,\n} from '@tanstack/start-server-core'\nimport { StartServer } from './StartServer'\n\nimport type { ReadableStream } from 'node:stream/web'\n\nexport const defaultStreamHandler = defineHandlerCallback(\n async ({ request, router, responseHeaders }) => {\n if (typeof ReactDOMServer.renderToReadableStream === 'function') {\n const stream = await ReactDOMServer.renderToReadableStream(\n <StartServer router={router} />,\n {\n signal: request.signal,\n },\n )\n\n if (isbot(request.headers.get('User-Agent'))) {\n await stream.allReady\n }\n\n const responseStream = transformReadableStreamWithRouter(\n router,\n stream as unknown as ReadableStream,\n )\n return new Response(responseStream as any, {\n status: router.state.statusCode,\n headers: responseHeaders,\n })\n }\n\n if (typeof ReactDOMServer.renderToPipeableStream === 'function') {\n const reactAppPassthrough = new PassThrough()\n\n try {\n const pipeable = ReactDOMServer.renderToPipeableStream(\n <StartServer router={router} />,\n {\n ...(isbot(request.headers.get('User-Agent'))\n ? {\n onAllReady() {\n pipeable.pipe(reactAppPassthrough)\n },\n }\n : {\n onShellReady() {\n pipeable.pipe(reactAppPassthrough)\n },\n }),\n onError: (error, info) => {\n if (\n error instanceof Error &&\n error.message === 'ShellBoundaryError'\n )\n return\n console.error('Error in renderToPipeableStream:', error, info)\n },\n },\n )\n } catch (e) {\n console.error('Error in renderToPipeableStream:', e)\n }\n\n const responseStream = transformPipeableStreamWithRouter(\n router,\n reactAppPassthrough,\n )\n return new Response(responseStream as any, {\n status: router.state.statusCode,\n headers: responseHeaders,\n })\n }\n\n throw new Error(\n 'No renderToReadableStream or renderToPipeableStream found in react-dom/server. Ensure you are using a version of react-dom that supports streaming.',\n )\n },\n)\n"],"names":["defineHandlerCallback","jsx","StartServer","isbot","transformReadableStreamWithRouter","PassThrough","transformPipeableStreamWithRouter"],"mappings":";;;;;;;;AAaO,MAAM,uBAAuBA,gBAAA;AAAA,EAClC,OAAO,EAAE,SAAS,QAAQ,sBAAsB;AAC1C,QAAA,OAAO,eAAe,2BAA2B,YAAY;AACzD,YAAA,SAAS,MAAM,eAAe;AAAA,QAClCC,+BAACC,YAAAA,eAAY,QAAgB;AAAA,QAC7B;AAAA,UACE,QAAQ,QAAQ;AAAA,QAAA;AAAA,MAEpB;AAEA,UAAIC,MAAAA,MAAM,QAAQ,QAAQ,IAAI,YAAY,CAAC,GAAG;AAC5C,cAAM,OAAO;AAAA,MAAA;AAGf,YAAM,iBAAiBC,gBAAA;AAAA,QACrB;AAAA,QACA;AAAA,MACF;AACO,aAAA,IAAI,SAAS,gBAAuB;AAAA,QACzC,QAAQ,OAAO,MAAM;AAAA,QACrB,SAAS;AAAA,MAAA,CACV;AAAA,IAAA;AAGC,QAAA,OAAO,eAAe,2BAA2B,YAAY;AACzD,YAAA,sBAAsB,IAAIC,wBAAY;AAExC,UAAA;AACF,cAAM,WAAW,eAAe;AAAA,UAC9BJ,+BAACC,YAAAA,eAAY,QAAgB;AAAA,UAC7B;AAAA,YACE,GAAIC,MAAAA,MAAM,QAAQ,QAAQ,IAAI,YAAY,CAAC,IACvC;AAAA,cACE,aAAa;AACX,yBAAS,KAAK,mBAAmB;AAAA,cAAA;AAAA,YACnC,IAEF;AAAA,cACE,eAAe;AACb,yBAAS,KAAK,mBAAmB;AAAA,cAAA;AAAA,YAErC;AAAA,YACJ,SAAS,CAAC,OAAO,SAAS;AAEtB,kBAAA,iBAAiB,SACjB,MAAM,YAAY;AAElB;AACM,sBAAA,MAAM,oCAAoC,OAAO,IAAI;AAAA,YAAA;AAAA,UAC/D;AAAA,QAEJ;AAAA,eACO,GAAG;AACF,gBAAA,MAAM,oCAAoC,CAAC;AAAA,MAAA;AAGrD,YAAM,iBAAiBG,gBAAA;AAAA,QACrB;AAAA,QACA;AAAA,MACF;AACO,aAAA,IAAI,SAAS,gBAAuB;AAAA,QACzC,QAAQ,OAAO,MAAM;AAAA,QACrB,SAAS;AAAA,MAAA,CACV;AAAA,IAAA;AAGH,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EAAA;AAEJ;;"}

@@ -1,1 +0,1 @@

export declare const defaultStreamHandler: import('@tanstack/start-server-core').HandlerCallback<import('@tanstack/router-core').AnyRouter, Promise<Response>>;
export declare const defaultStreamHandler: import('@tanstack/start-server-core').HandlerCallback<import('@tanstack/router-core').AnyRouter>;

@@ -1,1 +0,1 @@

export declare const defaultRenderHandler: import('@tanstack/start-server-core').HandlerCallback<import('@tanstack/router-core').AnyRouter, Promise<Response>>;
export declare const defaultRenderHandler: import('@tanstack/start-server-core').HandlerCallback<import('@tanstack/router-core').AnyRouter>;

@@ -1,1 +0,1 @@

export declare const defaultStreamHandler: import('@tanstack/start-server-core').HandlerCallback<import('@tanstack/router-core').AnyRouter, Promise<Response>>;
export declare const defaultStreamHandler: import('@tanstack/start-server-core').HandlerCallback<import('@tanstack/router-core').AnyRouter>;

@@ -44,2 +44,4 @@ import { jsx } from "react/jsx-runtime";

onError: (error, info) => {
if (error instanceof Error && error.message === "ShellBoundaryError")
return;
console.error("Error in renderToPipeableStream:", error, info);

@@ -46,0 +48,0 @@ }

@@ -1,1 +0,1 @@

{"version":3,"file":"defaultStreamHandler.js","sources":["../../src/defaultStreamHandler.tsx"],"sourcesContent":["import { PassThrough } from 'node:stream'\nimport { isbot } from 'isbot'\nimport ReactDOMServer from 'react-dom/server'\n\nimport {\n defineHandlerCallback,\n transformPipeableStreamWithRouter,\n transformReadableStreamWithRouter,\n} from '@tanstack/start-server-core'\nimport { StartServer } from './StartServer'\n\nimport type { ReadableStream } from 'node:stream/web'\n\nexport const defaultStreamHandler = defineHandlerCallback(\n async ({ request, router, responseHeaders }) => {\n if (typeof ReactDOMServer.renderToReadableStream === 'function') {\n const stream = await ReactDOMServer.renderToReadableStream(\n <StartServer router={router} />,\n {\n signal: request.signal,\n },\n )\n\n if (isbot(request.headers.get('User-Agent'))) {\n await stream.allReady\n }\n\n const responseStream = transformReadableStreamWithRouter(\n router,\n stream as unknown as ReadableStream,\n )\n return new Response(responseStream as any, {\n status: router.state.statusCode,\n headers: responseHeaders,\n })\n }\n\n if (typeof ReactDOMServer.renderToPipeableStream === 'function') {\n const reactAppPassthrough = new PassThrough()\n\n try {\n const pipeable = ReactDOMServer.renderToPipeableStream(\n <StartServer router={router} />,\n {\n ...(isbot(request.headers.get('User-Agent'))\n ? {\n onAllReady() {\n pipeable.pipe(reactAppPassthrough)\n },\n }\n : {\n onShellReady() {\n pipeable.pipe(reactAppPassthrough)\n },\n }),\n onError: (error, info) => {\n console.error('Error in renderToPipeableStream:', error, info)\n },\n },\n )\n } catch (e) {\n console.error('Error in renderToPipeableStream:', e)\n }\n\n const responseStream = transformPipeableStreamWithRouter(\n router,\n reactAppPassthrough,\n )\n return new Response(responseStream as any, {\n status: router.state.statusCode,\n headers: responseHeaders,\n })\n }\n\n throw new Error(\n 'No renderToReadableStream or renderToPipeableStream found in react-dom/server. Ensure you are using a version of react-dom that supports streaming.',\n )\n },\n)\n"],"names":[],"mappings":";;;;;;AAaO,MAAM,uBAAuB;AAAA,EAClC,OAAO,EAAE,SAAS,QAAQ,sBAAsB;AAC1C,QAAA,OAAO,eAAe,2BAA2B,YAAY;AACzD,YAAA,SAAS,MAAM,eAAe;AAAA,QAClC,oBAAC,eAAY,QAAgB;AAAA,QAC7B;AAAA,UACE,QAAQ,QAAQ;AAAA,QAAA;AAAA,MAEpB;AAEA,UAAI,MAAM,QAAQ,QAAQ,IAAI,YAAY,CAAC,GAAG;AAC5C,cAAM,OAAO;AAAA,MAAA;AAGf,YAAM,iBAAiB;AAAA,QACrB;AAAA,QACA;AAAA,MACF;AACO,aAAA,IAAI,SAAS,gBAAuB;AAAA,QACzC,QAAQ,OAAO,MAAM;AAAA,QACrB,SAAS;AAAA,MAAA,CACV;AAAA,IAAA;AAGC,QAAA,OAAO,eAAe,2BAA2B,YAAY;AACzD,YAAA,sBAAsB,IAAI,YAAY;AAExC,UAAA;AACF,cAAM,WAAW,eAAe;AAAA,UAC9B,oBAAC,eAAY,QAAgB;AAAA,UAC7B;AAAA,YACE,GAAI,MAAM,QAAQ,QAAQ,IAAI,YAAY,CAAC,IACvC;AAAA,cACE,aAAa;AACX,yBAAS,KAAK,mBAAmB;AAAA,cAAA;AAAA,YACnC,IAEF;AAAA,cACE,eAAe;AACb,yBAAS,KAAK,mBAAmB;AAAA,cAAA;AAAA,YAErC;AAAA,YACJ,SAAS,CAAC,OAAO,SAAS;AAChB,sBAAA,MAAM,oCAAoC,OAAO,IAAI;AAAA,YAAA;AAAA,UAC/D;AAAA,QAEJ;AAAA,eACO,GAAG;AACF,gBAAA,MAAM,oCAAoC,CAAC;AAAA,MAAA;AAGrD,YAAM,iBAAiB;AAAA,QACrB;AAAA,QACA;AAAA,MACF;AACO,aAAA,IAAI,SAAS,gBAAuB;AAAA,QACzC,QAAQ,OAAO,MAAM;AAAA,QACrB,SAAS;AAAA,MAAA,CACV;AAAA,IAAA;AAGH,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EAAA;AAEJ;"}
{"version":3,"file":"defaultStreamHandler.js","sources":["../../src/defaultStreamHandler.tsx"],"sourcesContent":["import { PassThrough } from 'node:stream'\nimport { isbot } from 'isbot'\nimport ReactDOMServer from 'react-dom/server'\n\nimport {\n defineHandlerCallback,\n transformPipeableStreamWithRouter,\n transformReadableStreamWithRouter,\n} from '@tanstack/start-server-core'\nimport { StartServer } from './StartServer'\n\nimport type { ReadableStream } from 'node:stream/web'\n\nexport const defaultStreamHandler = defineHandlerCallback(\n async ({ request, router, responseHeaders }) => {\n if (typeof ReactDOMServer.renderToReadableStream === 'function') {\n const stream = await ReactDOMServer.renderToReadableStream(\n <StartServer router={router} />,\n {\n signal: request.signal,\n },\n )\n\n if (isbot(request.headers.get('User-Agent'))) {\n await stream.allReady\n }\n\n const responseStream = transformReadableStreamWithRouter(\n router,\n stream as unknown as ReadableStream,\n )\n return new Response(responseStream as any, {\n status: router.state.statusCode,\n headers: responseHeaders,\n })\n }\n\n if (typeof ReactDOMServer.renderToPipeableStream === 'function') {\n const reactAppPassthrough = new PassThrough()\n\n try {\n const pipeable = ReactDOMServer.renderToPipeableStream(\n <StartServer router={router} />,\n {\n ...(isbot(request.headers.get('User-Agent'))\n ? {\n onAllReady() {\n pipeable.pipe(reactAppPassthrough)\n },\n }\n : {\n onShellReady() {\n pipeable.pipe(reactAppPassthrough)\n },\n }),\n onError: (error, info) => {\n if (\n error instanceof Error &&\n error.message === 'ShellBoundaryError'\n )\n return\n console.error('Error in renderToPipeableStream:', error, info)\n },\n },\n )\n } catch (e) {\n console.error('Error in renderToPipeableStream:', e)\n }\n\n const responseStream = transformPipeableStreamWithRouter(\n router,\n reactAppPassthrough,\n )\n return new Response(responseStream as any, {\n status: router.state.statusCode,\n headers: responseHeaders,\n })\n }\n\n throw new Error(\n 'No renderToReadableStream or renderToPipeableStream found in react-dom/server. Ensure you are using a version of react-dom that supports streaming.',\n )\n },\n)\n"],"names":[],"mappings":";;;;;;AAaO,MAAM,uBAAuB;AAAA,EAClC,OAAO,EAAE,SAAS,QAAQ,sBAAsB;AAC1C,QAAA,OAAO,eAAe,2BAA2B,YAAY;AACzD,YAAA,SAAS,MAAM,eAAe;AAAA,QAClC,oBAAC,eAAY,QAAgB;AAAA,QAC7B;AAAA,UACE,QAAQ,QAAQ;AAAA,QAAA;AAAA,MAEpB;AAEA,UAAI,MAAM,QAAQ,QAAQ,IAAI,YAAY,CAAC,GAAG;AAC5C,cAAM,OAAO;AAAA,MAAA;AAGf,YAAM,iBAAiB;AAAA,QACrB;AAAA,QACA;AAAA,MACF;AACO,aAAA,IAAI,SAAS,gBAAuB;AAAA,QACzC,QAAQ,OAAO,MAAM;AAAA,QACrB,SAAS;AAAA,MAAA,CACV;AAAA,IAAA;AAGC,QAAA,OAAO,eAAe,2BAA2B,YAAY;AACzD,YAAA,sBAAsB,IAAI,YAAY;AAExC,UAAA;AACF,cAAM,WAAW,eAAe;AAAA,UAC9B,oBAAC,eAAY,QAAgB;AAAA,UAC7B;AAAA,YACE,GAAI,MAAM,QAAQ,QAAQ,IAAI,YAAY,CAAC,IACvC;AAAA,cACE,aAAa;AACX,yBAAS,KAAK,mBAAmB;AAAA,cAAA;AAAA,YACnC,IAEF;AAAA,cACE,eAAe;AACb,yBAAS,KAAK,mBAAmB;AAAA,cAAA;AAAA,YAErC;AAAA,YACJ,SAAS,CAAC,OAAO,SAAS;AAEtB,kBAAA,iBAAiB,SACjB,MAAM,YAAY;AAElB;AACM,sBAAA,MAAM,oCAAoC,OAAO,IAAI;AAAA,YAAA;AAAA,UAC/D;AAAA,QAEJ;AAAA,eACO,GAAG;AACF,gBAAA,MAAM,oCAAoC,CAAC;AAAA,MAAA;AAGrD,YAAM,iBAAiB;AAAA,QACrB;AAAA,QACA;AAAA,MACF;AACO,aAAA,IAAI,SAAS,gBAAuB;AAAA,QACzC,QAAQ,OAAO,MAAM;AAAA,QACrB,SAAS;AAAA,MAAA,CACV;AAAA,IAAA;AAGH,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EAAA;AAEJ;"}
{
"name": "@tanstack/react-start-server",
"version": "1.120.5",
"version": "1.121.0-alpha.1",
"description": "Modern and scalable routing for React applications",

@@ -51,2 +51,3 @@ "author": "Tanner Linsley",

"tiny-warning": "^1.0.3",
"tiny-invariant": "^1.3.3",
"h3": "1.13.0",

@@ -56,7 +57,7 @@ "isbot": "^5.1.22",

"unctx": "^2.4.1",
"@tanstack/history": "^1.115.0",
"@tanstack/react-router": "^1.120.5",
"@tanstack/start-client-core": "^1.120.5",
"@tanstack/start-server-core": "^1.120.5",
"@tanstack/router-core": "^1.120.5"
"@tanstack/history": "^1.121.0-alpha.1",
"@tanstack/react-router": "^1.121.0-alpha.1",
"@tanstack/router-core": "^1.121.0-alpha.1",
"@tanstack/start-client-core": "^1.121.0-alpha.1",
"@tanstack/start-server-core": "^1.121.0-alpha.1"
},

@@ -63,0 +64,0 @@ "devDependencies": {

@@ -1,33 +0,9 @@

> 🤫 we're cooking up something special!
<img src="https://static.scarf.sh/a.png?x-pxid=d988eb79-b0fc-4a2b-8514-6a1ab932d188" />
# TanStack Start
# TanStack React Start - Server
![TanStack Router Header](https://github.com/tanstack/router/raw/main/media/header.png)
This package is not meant to be used directly. It is a dependency of [`@tanstack/react-start`](https://www.npmjs.com/package/@tanstack/react-start).
🤖 Type-safe router w/ built-in caching & URL state management for React!
TanStack React Start is a fullstack-framework made for SSR, Streaming, Server Functions, API Routes, bundling and more powered by [TanStack Router](https://tanstack.com/router).
<a href="https://twitter.com/intent/tweet?button_hashtag=TanStack" target="\_parent">
<img alt="#TanStack" src="https://img.shields.io/twitter/url?color=%2308a0e9&label=%23TanStack&style=social&url=https%3A%2F%2Ftwitter.com%2Fintent%2Ftweet%3Fbutton_hashtag%3DTanStack">
</a><a href="https://discord.com/invite/WrRKjPJ" target="\_parent">
<img alt="" src="https://img.shields.io/badge/Discord-TanStack-%235865F2" />
</a><a href="https://npmjs.com/package/@tanstack/react-router" target="\_parent">
<img alt="" src="https://img.shields.io/npm/dm/@tanstack/router.svg" />
</a><a href="https://bundlephobia.com/result?p=@tanstack/react-router" target="\_parent">
<img alt="" src="https://badgen.net/bundlephobia/minzip/@tanstack/react-router" />
</a><a href="#badge">
<img alt="semantic-release" src="https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg">
</a><a href="https://github.com/tanstack/router/discussions">
<img alt="Join the discussion on Github" src="https://img.shields.io/badge/Github%20Discussions%20%26%20Support-Chat%20now!-blue" />
</a><a href="https://bestofjs.org/projects/router"><img alt="Best of JS" src="https://img.shields.io/endpoint?url=https://bestofjs-serverless.now.sh/api/project-badge?fullName=tanstack%2Frouter%26since=daily" /></a><a href="https://github.com/tanstack/router" target="\_parent">
<img alt="" src="https://img.shields.io/github/stars/tanstack/router.svg?style=social&label=Star" />
</a><a href="https://twitter.com/tan_stack" target="\_parent">
<img alt="" src="https://img.shields.io/twitter/follow/tan_stack.svg?style=social&label=Follow @TanStack" />
</a><a href="https://twitter.com/tannerlinsley" target="\_parent">
<img alt="" src="https://img.shields.io/twitter/follow/tannerlinsley.svg?style=social&label=Follow @TannerLinsley" />
</a>
Enjoy this library? Try the entire [TanStack](https://tanstack.com)! [React Query](https://github.com/tannerlinsley/react-query), [React Table](https://github.com/tanstack/react-table), [React Charts](https://github.com/tannerlinsley/react-charts), [React Virtual](https://github.com/tannerlinsley/react-virtual)
## Visit [tanstack.com/router](https://tanstack.com/router) for docs, guides, API and more!
Head over to [tanstack.com/start](https://tanstack.com/start) for more information about getting started.

@@ -57,2 +57,7 @@ import { PassThrough } from 'node:stream'

onError: (error, info) => {
if (
error instanceof Error &&
error.message === 'ShellBoundaryError'
)
return
console.error('Error in renderToPipeableStream:', error, info)

@@ -59,0 +64,0 @@ },