-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
docs: correct local relative links #6027
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
Important Review skippedReview was skipped due to path filters ⛔ Files ignored due to path filters (1)
CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including You can disable this status message by setting the WalkthroughThis PR systematically updates internal documentation links across the repository from parent-directory relative paths ( Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~25 minutes
Possibly related PRs
Suggested labels
Suggested reviewers
Poem
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 9
🧹 Nitpick comments (4)
docs/router/framework/react/api/router/deferFunction.md (1)
9-9: Link updates align with PR objectives but may diverge from coding guideline.The links have been correctly updated to use current-directory relative paths (
./useAwaitedHook.md,./awaitComponent.md), which aligns with the PR's stated goal of validating links against their "local resolution." However, the coding guideline specifies links should be "relative to docs/ folder (e.g.,./guide/data-loading)"—which would require docs-root-relative paths like./router/framework/react/api/router/useAwaitedHook.mdfrom any file in the docs tree.The current implementation uses file-relative links, which is the conventional markdown approach and matches the PR's intent. The guideline example likely assumes links are always expressed from the docs/ root, but that doesn't scale to nested files without explicit parent traversal.
Clarification needed: Confirm whether the coding guideline should be updated to reflect file-relative links (as implemented in this PR) or if a different link format is expected. Based on learnings, the guideline appears to expect docs-root-relative links, but the PR treats links as file-relative.
If the guideline intent is indeed docs-root-relative links, the links should be:
[`useAwaited`](./router/framework/react/api/router/useAwaitedHook.md) [`<Await>`](./router/framework/react/api/router/awaitComponent.md)Otherwise, if file-relative links are the intended standard (as this PR suggests), the coding guideline should be updated to clarify this. Based on learnings, the guideline at this time specifies relative-to-docs-folder.
Also applies to: 21-21
docs/router/framework/react/routing/file-naming-conventions.md (1)
5-5: Hyphenate compound adjective "file-naming conventions".When using multiple words as a compound adjective before a noun, they should be hyphenated. Change "file naming conventions" to "file-naming conventions" in the opening sentence.
-File-based routing requires that you follow a few simple file naming conventions to ensure that your routes are generated correctly. +File-based routing requires that you follow a few simple file-naming conventions to ensure that your routes are generated correctly.scripts/verify-links.ts (1)
25-28:stripExtensionmay not handle edge cases correctly.Using
extnamewith template literal replacement can produce unexpected results:
- For paths without extensions,
extnamereturns'', sop.replace('', '')does nothing (correct).- For paths like
README.md, it correctly returnsREADME.- However, using
replacewith a plain string only replaces the first occurrence. If a path contains.mdmultiple times (e.g.,some.md.backup.md), only the first.mdwould be removed.Consider using a more robust approach:
function stripExtension(p: string): string { - return p.replace(`${extname(p)}`, '') + const ext = extname(p) + return ext ? p.slice(0, -ext.length) : p }docs/router/framework/react/routing/file-based-routing.md (1)
5-5: ✓ Documentation links correctly updated; minor style suggestion.All cross-references use correct relative paths:
- Same-directory references:
./code-based-routing.md,./virtual-file-routes.md- Parent-level installation guides:
../installation/with-vite, etc.Line 106 uses informal language ("awesome"). Consider a more formal alternative such as "significant" or "substantial" for better documentation tone.
Also applies to: 106-106, 116-119
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (134)
docs/router/eslint/eslint-plugin-router.md(1 hunks)docs/router/framework/react/api/router.md(1 hunks)docs/router/framework/react/api/router/ActiveLinkOptionsType.md(1 hunks)docs/router/framework/react/api/router/FileRouteClass.md(2 hunks)docs/router/framework/react/api/router/LinkOptionsType.md(2 hunks)docs/router/framework/react/api/router/LinkPropsType.md(2 hunks)docs/router/framework/react/api/router/NavigateOptionsType.md(2 hunks)docs/router/framework/react/api/router/NotFoundRouteClass.md(2 hunks)docs/router/framework/react/api/router/RedirectType.md(1 hunks)docs/router/framework/react/api/router/RootRouteClass.md(2 hunks)docs/router/framework/react/api/router/RouteApiClass.md(2 hunks)docs/router/framework/react/api/router/RouteApiType.md(12 hunks)docs/router/framework/react/api/router/RouteClass.md(2 hunks)docs/router/framework/react/api/router/RouteMaskType.md(1 hunks)docs/router/framework/react/api/router/RouteOptionsType.md(3 hunks)docs/router/framework/react/api/router/RouteType.md(1 hunks)docs/router/framework/react/api/router/RouterClass.md(2 hunks)docs/router/framework/react/api/router/RouterEventsType.md(1 hunks)docs/router/framework/react/api/router/RouterOptionsType.md(4 hunks)docs/router/framework/react/api/router/RouterStateType.md(1 hunks)docs/router/framework/react/api/router/RouterType.md(2 hunks)docs/router/framework/react/api/router/ToMaskOptionsType.md(1 hunks)docs/router/framework/react/api/router/UseMatchRouteOptionsType.md(1 hunks)docs/router/framework/react/api/router/catchBoundaryComponent.md(1 hunks)docs/router/framework/react/api/router/createFileRouteFunction.md(1 hunks)docs/router/framework/react/api/router/createLazyFileRouteFunction.md(3 hunks)docs/router/framework/react/api/router/createLazyRouteFunction.md(3 hunks)docs/router/framework/react/api/router/createRootRouteFunction.md(1 hunks)docs/router/framework/react/api/router/createRootRouteWithContextFunction.md(1 hunks)docs/router/framework/react/api/router/createRouteFunction.md(1 hunks)docs/router/framework/react/api/router/createRouteMaskFunction.md(1 hunks)docs/router/framework/react/api/router/createRouterFunction.md(1 hunks)docs/router/framework/react/api/router/deferFunction.md(2 hunks)docs/router/framework/react/api/router/getRouteApiFunction.md(1 hunks)docs/router/framework/react/api/router/isNotFoundFunction.md(2 hunks)docs/router/framework/react/api/router/linkComponent.md(1 hunks)docs/router/framework/react/api/router/linkOptions.md(1 hunks)docs/router/framework/react/api/router/matchRouteComponent.md(1 hunks)docs/router/framework/react/api/router/navigateComponent.md(1 hunks)docs/router/framework/react/api/router/notFoundFunction.md(1 hunks)docs/router/framework/react/api/router/redirectFunction.md(1 hunks)docs/router/framework/react/api/router/rootRouteWithContextFunction.md(2 hunks)docs/router/framework/react/api/router/useBlockerHook.md(1 hunks)docs/router/framework/react/api/router/useCanGoBack.md(1 hunks)docs/router/framework/react/api/router/useChildMatchesHook.md(2 hunks)docs/router/framework/react/api/router/useLinkPropsHook.md(1 hunks)docs/router/framework/react/api/router/useLoaderDataHook.md(2 hunks)docs/router/framework/react/api/router/useLoaderDepsHook.md(1 hunks)docs/router/framework/react/api/router/useLocationHook.md(2 hunks)docs/router/framework/react/api/router/useMatchHook.md(4 hunks)docs/router/framework/react/api/router/useMatchRouteHook.md(1 hunks)docs/router/framework/react/api/router/useMatchesHook.md(2 hunks)docs/router/framework/react/api/router/useNavigateHook.md(1 hunks)docs/router/framework/react/api/router/useParamsHook.md(1 hunks)docs/router/framework/react/api/router/useParentMatchesHook.md(2 hunks)docs/router/framework/react/api/router/useRouterHook.md(1 hunks)docs/router/framework/react/api/router/useRouterStateHook.md(2 hunks)docs/router/framework/react/api/router/useSearchHook.md(1 hunks)docs/router/framework/react/decisions-on-dx.md(3 hunks)docs/router/framework/react/faq.md(2 hunks)docs/router/framework/react/guide/authenticated-routes.md(2 hunks)docs/router/framework/react/guide/code-splitting.md(2 hunks)docs/router/framework/react/guide/creating-a-router.md(2 hunks)docs/router/framework/react/guide/custom-search-param-serialization.md(1 hunks)docs/router/framework/react/guide/data-loading.md(3 hunks)docs/router/framework/react/guide/deferred-data-loading.md(3 hunks)docs/router/framework/react/guide/external-data-loading.md(1 hunks)docs/router/framework/react/guide/history-types.md(1 hunks)docs/router/framework/react/guide/navigation-blocking.md(1 hunks)docs/router/framework/react/guide/not-found-errors.md(1 hunks)docs/router/framework/react/guide/path-params.md(2 hunks)docs/router/framework/react/guide/route-masking.md(1 hunks)docs/router/framework/react/guide/search-params.md(2 hunks)docs/router/framework/react/guide/ssr.md(1 hunks)docs/router/framework/react/guide/type-safety.md(1 hunks)docs/router/framework/react/how-to/arrays-objects-dates-search-params.md(1 hunks)docs/router/framework/react/how-to/debug-router-issues.md(2 hunks)docs/router/framework/react/how-to/deploy-to-production.md(1 hunks)docs/router/framework/react/how-to/integrate-framer-motion.md(0 hunks)docs/router/framework/react/how-to/integrate-shadcn-ui.md(0 hunks)docs/router/framework/react/how-to/migrate-from-react-router.md(3 hunks)docs/router/framework/react/how-to/navigate-with-search-params.md(2 hunks)docs/router/framework/react/how-to/setup-auth-providers.md(1 hunks)docs/router/framework/react/how-to/setup-authentication.md(2 hunks)docs/router/framework/react/how-to/setup-basic-search-params.md(3 hunks)docs/router/framework/react/how-to/setup-rbac.md(2 hunks)docs/router/framework/react/how-to/setup-ssr.md(3 hunks)docs/router/framework/react/how-to/setup-testing.md(3 hunks)docs/router/framework/react/how-to/share-search-params-across-routes.md(1 hunks)docs/router/framework/react/how-to/test-file-based-routing.md(1 hunks)docs/router/framework/react/how-to/use-environment-variables.md(1 hunks)docs/router/framework/react/how-to/validate-search-params.md(3 hunks)docs/router/framework/react/installation/manual.md(1 hunks)docs/router/framework/react/installation/migrate-from-react-location.md(1 hunks)docs/router/framework/react/installation/with-esbuild.md(1 hunks)docs/router/framework/react/installation/with-router-cli.md(1 hunks)docs/router/framework/react/installation/with-rspack.md(1 hunks)docs/router/framework/react/installation/with-vite.md(1 hunks)docs/router/framework/react/installation/with-webpack.md(1 hunks)docs/router/framework/react/routing/code-based-routing.md(4 hunks)docs/router/framework/react/routing/file-based-routing.md(3 hunks)docs/router/framework/react/routing/file-naming-conventions.md(3 hunks)docs/router/framework/react/routing/route-trees.md(2 hunks)docs/router/framework/react/routing/routing-concepts.md(1 hunks)docs/router/framework/solid/installation/with-esbuild.md(1 hunks)docs/router/framework/solid/installation/with-rspack.md(1 hunks)docs/router/framework/solid/installation/with-webpack.md(1 hunks)docs/router/integrations/query.md(1 hunks)docs/start/framework/react/build-from-scratch.md(2 hunks)docs/start/framework/react/getting-started.md(1 hunks)docs/start/framework/react/guide/authentication-overview.md(1 hunks)docs/start/framework/react/guide/authentication.md(2 hunks)docs/start/framework/react/guide/code-execution-patterns.md(2 hunks)docs/start/framework/react/guide/environment-variables.md(1 hunks)docs/start/framework/react/guide/hydration-errors.md(1 hunks)docs/start/framework/react/guide/middleware.md(1 hunks)docs/start/framework/react/guide/selective-ssr.md(1 hunks)docs/start/framework/react/guide/server-functions.md(2 hunks)docs/start/framework/react/guide/server-routes.md(1 hunks)docs/start/framework/react/migrate-from-next-js.md(2 hunks)docs/start/framework/react/quick-start.md(2 hunks)docs/start/framework/react/tutorial/fetching-external-api.md(1 hunks)docs/start/framework/solid/build-from-scratch.md(2 hunks)docs/start/framework/solid/getting-started.md(1 hunks)docs/start/framework/solid/guide/authentication.md(2 hunks)docs/start/framework/solid/guide/code-execution-patterns.md(2 hunks)docs/start/framework/solid/guide/environment-variables.md(1 hunks)docs/start/framework/solid/guide/hydration-errors.md(1 hunks)docs/start/framework/solid/guide/selective-ssr.md(1 hunks)docs/start/framework/solid/guide/server-routes.md(1 hunks)docs/start/framework/solid/quick-start.md(2 hunks)nx.json(1 hunks)package.json(2 hunks)scripts/verify-links.ts(5 hunks)
💤 Files with no reviewable changes (2)
- docs/router/framework/react/how-to/integrate-shadcn-ui.md
- docs/router/framework/react/how-to/integrate-framer-motion.md
🧰 Additional context used
📓 Path-based instructions (3)
docs/**/*.md
📄 CodeRabbit inference engine (AGENTS.md)
Use relative internal documentation links relative to docs/ folder (e.g., ./guide/data-loading)
Files:
docs/start/framework/react/guide/middleware.mddocs/router/framework/react/guide/creating-a-router.mddocs/router/framework/react/how-to/deploy-to-production.mddocs/router/framework/react/api/router/deferFunction.mddocs/router/framework/react/api/router/RouteType.mddocs/router/framework/react/api/router/createRootRouteWithContextFunction.mddocs/start/framework/react/tutorial/fetching-external-api.mddocs/start/framework/solid/guide/selective-ssr.mddocs/router/framework/react/how-to/test-file-based-routing.mddocs/router/framework/react/api/router/NavigateOptionsType.mddocs/router/framework/react/api/router/useNavigateHook.mddocs/router/framework/react/api/router/NotFoundRouteClass.mddocs/router/eslint/eslint-plugin-router.mddocs/router/framework/react/guide/navigation-blocking.mddocs/router/framework/solid/installation/with-rspack.mddocs/start/framework/react/guide/selective-ssr.mddocs/router/framework/react/how-to/use-environment-variables.mddocs/router/framework/react/guide/history-types.mddocs/start/framework/solid/build-from-scratch.mddocs/router/framework/react/api/router/rootRouteWithContextFunction.mddocs/router/framework/react/guide/external-data-loading.mddocs/router/framework/react/routing/code-based-routing.mddocs/router/framework/react/installation/with-webpack.mddocs/start/framework/react/guide/environment-variables.mddocs/router/framework/react/api/router/RouteClass.mddocs/router/framework/react/api/router/RouterEventsType.mddocs/router/framework/react/api/router/useMatchesHook.mddocs/start/framework/react/migrate-from-next-js.mddocs/router/framework/react/api/router/createRouteFunction.mddocs/router/framework/react/api/router/useLinkPropsHook.mddocs/router/framework/react/routing/route-trees.mddocs/router/framework/react/api/router/useSearchHook.mddocs/router/framework/react/guide/authenticated-routes.mddocs/router/framework/react/api/router/matchRouteComponent.mddocs/router/framework/react/guide/path-params.mddocs/router/framework/react/api/router/createLazyFileRouteFunction.mddocs/router/framework/react/api/router/RouterStateType.mddocs/router/framework/react/api/router/redirectFunction.mddocs/start/framework/solid/quick-start.mddocs/router/framework/react/api/router/createRouterFunction.mddocs/router/framework/react/how-to/setup-auth-providers.mddocs/router/framework/react/guide/code-splitting.mddocs/router/framework/react/how-to/setup-rbac.mddocs/router/framework/react/installation/with-esbuild.mddocs/router/framework/react/api/router/createLazyRouteFunction.mddocs/router/framework/react/guide/ssr.mddocs/router/framework/react/api/router/createRouteMaskFunction.mddocs/start/framework/solid/getting-started.mddocs/start/framework/react/guide/server-functions.mddocs/router/framework/react/guide/not-found-errors.mddocs/router/framework/react/guide/data-loading.mddocs/start/framework/react/guide/code-execution-patterns.mddocs/start/framework/solid/guide/hydration-errors.mddocs/router/framework/react/api/router/UseMatchRouteOptionsType.mddocs/router/framework/react/api/router/notFoundFunction.mddocs/router/framework/react/installation/manual.mddocs/router/framework/react/api/router/RootRouteClass.mddocs/router/framework/react/how-to/setup-ssr.mddocs/router/framework/react/api/router/navigateComponent.mddocs/router/framework/solid/installation/with-webpack.mddocs/router/framework/react/installation/with-router-cli.mddocs/start/framework/react/guide/authentication-overview.mddocs/start/framework/react/guide/hydration-errors.mddocs/router/framework/react/api/router/useChildMatchesHook.mddocs/router/framework/react/api/router.mddocs/start/framework/solid/guide/server-routes.mddocs/router/framework/react/installation/with-vite.mddocs/router/framework/react/how-to/share-search-params-across-routes.mddocs/router/framework/react/api/router/useCanGoBack.mddocs/router/framework/react/api/router/RedirectType.mddocs/start/framework/react/getting-started.mddocs/router/framework/react/api/router/ActiveLinkOptionsType.mddocs/router/framework/react/how-to/validate-search-params.mddocs/router/integrations/query.mddocs/router/framework/react/decisions-on-dx.mddocs/router/framework/react/guide/type-safety.mddocs/router/framework/react/api/router/useBlockerHook.mddocs/router/framework/react/api/router/useMatchRouteHook.mddocs/router/framework/react/routing/file-based-routing.mddocs/router/framework/react/guide/search-params.mddocs/router/framework/react/how-to/setup-authentication.mddocs/router/framework/react/api/router/ToMaskOptionsType.mddocs/router/framework/react/how-to/arrays-objects-dates-search-params.mddocs/router/framework/react/api/router/getRouteApiFunction.mddocs/router/framework/react/guide/custom-search-param-serialization.mddocs/router/framework/react/installation/migrate-from-react-location.mddocs/router/framework/react/api/router/useRouterStateHook.mddocs/router/framework/react/api/router/catchBoundaryComponent.mddocs/router/framework/react/routing/file-naming-conventions.mddocs/router/framework/react/api/router/useLoaderDepsHook.mddocs/router/framework/react/guide/deferred-data-loading.mddocs/router/framework/react/api/router/RouterType.mddocs/start/framework/react/build-from-scratch.mddocs/start/framework/react/guide/authentication.mddocs/router/framework/react/api/router/LinkOptionsType.mddocs/router/framework/react/how-to/migrate-from-react-router.mddocs/router/framework/react/api/router/createRootRouteFunction.mddocs/router/framework/react/how-to/debug-router-issues.mddocs/router/framework/react/api/router/RouterOptionsType.mddocs/router/framework/react/api/router/useParamsHook.mddocs/router/framework/react/api/router/RouteOptionsType.mddocs/router/framework/solid/installation/with-esbuild.mddocs/router/framework/react/api/router/useMatchHook.mddocs/router/framework/react/api/router/FileRouteClass.mddocs/router/framework/react/api/router/isNotFoundFunction.mddocs/start/framework/solid/guide/code-execution-patterns.mddocs/router/framework/react/api/router/LinkPropsType.mddocs/router/framework/react/how-to/navigate-with-search-params.mddocs/router/framework/react/faq.mddocs/router/framework/react/api/router/linkOptions.mddocs/router/framework/react/api/router/createFileRouteFunction.mddocs/start/framework/solid/guide/authentication.mddocs/start/framework/react/guide/server-routes.mddocs/router/framework/react/how-to/setup-testing.mddocs/router/framework/react/api/router/linkComponent.mddocs/router/framework/react/routing/routing-concepts.mddocs/router/framework/react/api/router/useParentMatchesHook.mddocs/router/framework/react/api/router/RouteApiType.mddocs/router/framework/react/api/router/useLoaderDataHook.mddocs/router/framework/react/guide/route-masking.mddocs/router/framework/react/installation/with-rspack.mddocs/start/framework/react/quick-start.mddocs/router/framework/react/api/router/RouteMaskType.mddocs/router/framework/react/how-to/setup-basic-search-params.mddocs/router/framework/react/api/router/RouterClass.mddocs/start/framework/solid/guide/environment-variables.mddocs/router/framework/react/api/router/useRouterHook.mddocs/router/framework/react/api/router/useLocationHook.mddocs/router/framework/react/api/router/RouteApiClass.md
**/package.json
📄 CodeRabbit inference engine (AGENTS.md)
Use workspace protocol for internal dependencies (workspace:*)
Files:
package.json
**/*.{ts,tsx}
📄 CodeRabbit inference engine (AGENTS.md)
Use TypeScript strict mode with extensive type safety throughout the codebase
Files:
scripts/verify-links.ts
🧠 Learnings (14)
📓 Common learnings
Learnt from: CR
Repo: TanStack/router PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-11-25T00:18:21.282Z
Learning: Applies to docs/**/*.md : Use relative internal documentation links relative to docs/ folder (e.g., ./guide/data-loading)
📚 Learning: 2025-11-25T00:18:21.282Z
Learnt from: CR
Repo: TanStack/router PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-11-25T00:18:21.282Z
Learning: Applies to **/src/routes/**/*.{ts,tsx} : Use file-based routing in src/routes/ directories or code-based routing with route definitions
Applied to files:
docs/router/framework/react/guide/creating-a-router.mddocs/router/framework/react/api/router/RouteType.mddocs/router/framework/react/how-to/test-file-based-routing.mddocs/router/eslint/eslint-plugin-router.mddocs/router/framework/solid/installation/with-rspack.mddocs/router/framework/react/how-to/use-environment-variables.mddocs/router/framework/react/routing/code-based-routing.mddocs/router/framework/react/installation/with-webpack.mddocs/router/framework/react/api/router/RouteClass.mddocs/router/framework/react/api/router/useMatchesHook.mddocs/start/framework/react/migrate-from-next-js.mddocs/router/framework/react/api/router/createRouteFunction.mddocs/router/framework/react/routing/route-trees.mddocs/router/framework/react/guide/authenticated-routes.mddocs/router/framework/react/api/router/matchRouteComponent.mddocs/router/framework/react/guide/path-params.mddocs/router/framework/react/api/router/createLazyFileRouteFunction.mddocs/router/framework/react/api/router/RouterStateType.mddocs/router/framework/react/api/router/createRouterFunction.mddocs/router/framework/react/guide/code-splitting.mddocs/router/framework/react/installation/with-esbuild.mddocs/router/framework/react/api/router/createLazyRouteFunction.mddocs/router/framework/react/guide/not-found-errors.mddocs/router/framework/react/api/router/UseMatchRouteOptionsType.mddocs/router/framework/react/installation/manual.mddocs/router/framework/react/api/router/RootRouteClass.mddocs/router/framework/solid/installation/with-webpack.mddocs/router/framework/react/installation/with-router-cli.mddocs/router/framework/react/api/router.mddocs/router/framework/react/installation/with-vite.mddocs/router/framework/react/how-to/share-search-params-across-routes.mddocs/router/framework/react/how-to/validate-search-params.mddocs/router/framework/react/decisions-on-dx.mddocs/router/framework/react/guide/type-safety.mddocs/router/framework/react/api/router/useMatchRouteHook.mddocs/router/framework/react/routing/file-based-routing.mddocs/router/framework/react/api/router/getRouteApiFunction.mddocs/router/framework/react/installation/migrate-from-react-location.mddocs/router/framework/react/routing/file-naming-conventions.mddocs/router/framework/react/api/router/RouterType.mddocs/router/framework/react/how-to/migrate-from-react-router.mddocs/router/framework/react/api/router/createRootRouteFunction.mddocs/router/framework/react/how-to/debug-router-issues.mddocs/router/framework/react/api/router/RouterOptionsType.mddocs/router/framework/react/api/router/RouteOptionsType.mddocs/router/framework/solid/installation/with-esbuild.mddocs/router/framework/react/api/router/FileRouteClass.mddocs/router/framework/react/faq.mddocs/router/framework/react/api/router/createFileRouteFunction.mddocs/router/framework/react/how-to/setup-testing.mddocs/router/framework/react/routing/routing-concepts.mddocs/router/framework/react/api/router/RouteApiType.mddocs/router/framework/react/guide/route-masking.mddocs/router/framework/react/installation/with-rspack.md
📚 Learning: 2025-11-25T00:18:21.282Z
Learnt from: CR
Repo: TanStack/router PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-11-25T00:18:21.282Z
Learning: Applies to packages/react-router/**/*.{ts,tsx} : React Router components and hooks should use the tanstack/react-router package
Applied to files:
docs/router/framework/react/guide/creating-a-router.mddocs/router/framework/react/how-to/test-file-based-routing.mddocs/router/framework/react/api/router/useNavigateHook.mddocs/router/eslint/eslint-plugin-router.mddocs/router/framework/react/guide/navigation-blocking.mddocs/router/framework/solid/installation/with-rspack.mddocs/router/framework/react/how-to/use-environment-variables.mddocs/router/framework/react/api/router/rootRouteWithContextFunction.mddocs/router/framework/react/routing/code-based-routing.mddocs/router/framework/react/installation/with-webpack.mddocs/router/framework/react/api/router/RouteClass.mddocs/router/framework/react/api/router/useMatchesHook.mddocs/start/framework/react/migrate-from-next-js.mddocs/router/framework/react/api/router/createRouteFunction.mddocs/router/framework/react/api/router/useLinkPropsHook.mddocs/router/framework/react/routing/route-trees.mddocs/router/framework/react/api/router/useSearchHook.mddocs/router/framework/react/guide/authenticated-routes.mddocs/router/framework/react/api/router/matchRouteComponent.mddocs/router/framework/react/guide/path-params.mddocs/router/framework/react/api/router/createLazyFileRouteFunction.mddocs/router/framework/react/api/router/RouterStateType.mddocs/router/framework/react/api/router/redirectFunction.mddocs/router/framework/react/api/router/createRouterFunction.mddocs/router/framework/react/guide/code-splitting.mddocs/router/framework/react/installation/with-esbuild.mddocs/router/framework/react/guide/not-found-errors.mddocs/router/framework/react/guide/data-loading.mddocs/router/framework/react/api/router/UseMatchRouteOptionsType.mddocs/router/framework/react/installation/manual.mddocs/router/framework/react/api/router/RootRouteClass.mddocs/router/framework/react/how-to/setup-ssr.mddocs/router/framework/solid/installation/with-webpack.mddocs/router/framework/react/installation/with-router-cli.mddocs/start/framework/react/guide/authentication-overview.mddocs/router/framework/react/api/router/useChildMatchesHook.mddocs/router/framework/react/api/router.mddocs/router/framework/react/installation/with-vite.mddocs/router/framework/react/how-to/share-search-params-across-routes.mddocs/router/framework/react/api/router/RedirectType.mddocs/start/framework/react/getting-started.mddocs/router/framework/react/decisions-on-dx.mddocs/router/framework/react/guide/type-safety.mddocs/router/framework/react/api/router/useBlockerHook.mddocs/router/framework/react/api/router/useMatchRouteHook.mddocs/router/framework/react/routing/file-based-routing.mddocs/router/framework/react/guide/search-params.mddocs/router/framework/react/how-to/setup-authentication.mddocs/router/framework/react/api/router/getRouteApiFunction.mddocs/router/framework/react/installation/migrate-from-react-location.mddocs/router/framework/react/api/router/useRouterStateHook.mddocs/router/framework/react/api/router/catchBoundaryComponent.mddocs/router/framework/react/routing/file-naming-conventions.mddocs/router/framework/react/api/router/RouterType.mddocs/router/framework/react/how-to/migrate-from-react-router.mddocs/router/framework/react/api/router/createRootRouteFunction.mddocs/router/framework/react/how-to/debug-router-issues.mddocs/router/framework/react/api/router/RouterOptionsType.mddocs/router/framework/react/api/router/useParamsHook.mddocs/router/framework/solid/installation/with-esbuild.mddocs/router/framework/react/api/router/useMatchHook.mddocs/router/framework/react/how-to/navigate-with-search-params.mddocs/router/framework/react/faq.mddocs/router/framework/react/how-to/setup-testing.mddocs/router/framework/react/api/router/linkComponent.mddocs/router/framework/react/routing/routing-concepts.mddocs/router/framework/react/api/router/useParentMatchesHook.mddocs/router/framework/react/api/router/RouteApiType.mddocs/router/framework/react/installation/with-rspack.mddocs/start/framework/react/quick-start.mddocs/router/framework/react/how-to/setup-basic-search-params.mddocs/router/framework/react/api/router/RouterClass.mddocs/router/framework/react/api/router/useRouterHook.mddocs/router/framework/react/api/router/RouteApiClass.md
📚 Learning: 2025-11-25T00:18:21.282Z
Learnt from: CR
Repo: TanStack/router PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-11-25T00:18:21.282Z
Learning: Applies to packages/solid-router/**/*.{ts,tsx} : Solid Router components and primitives should use the tanstack/solid-router package
Applied to files:
docs/router/framework/react/guide/creating-a-router.mddocs/router/framework/react/how-to/test-file-based-routing.mddocs/router/eslint/eslint-plugin-router.mddocs/router/framework/solid/installation/with-rspack.mddocs/router/framework/react/how-to/use-environment-variables.mddocs/router/framework/react/routing/code-based-routing.mddocs/router/framework/react/installation/with-webpack.mddocs/start/framework/react/migrate-from-next-js.mddocs/router/framework/react/routing/route-trees.mddocs/router/framework/react/guide/authenticated-routes.mddocs/router/framework/react/guide/path-params.mddocs/router/framework/react/api/router/createLazyFileRouteFunction.mddocs/router/framework/react/api/router/RouterStateType.mddocs/router/framework/react/api/router/createRouterFunction.mddocs/router/framework/react/guide/code-splitting.mddocs/router/framework/react/installation/with-esbuild.mddocs/start/framework/solid/getting-started.mddocs/router/framework/react/guide/not-found-errors.mddocs/router/framework/react/api/router/UseMatchRouteOptionsType.mddocs/router/framework/react/installation/manual.mddocs/router/framework/react/how-to/setup-ssr.mddocs/router/framework/solid/installation/with-webpack.mddocs/router/framework/react/installation/with-router-cli.mddocs/router/framework/react/api/router.mddocs/start/framework/solid/guide/server-routes.mddocs/router/framework/react/installation/with-vite.mddocs/router/framework/react/how-to/share-search-params-across-routes.mddocs/router/framework/react/decisions-on-dx.mddocs/router/framework/react/guide/type-safety.mddocs/router/framework/react/routing/file-based-routing.mddocs/router/framework/react/how-to/setup-authentication.mddocs/router/framework/react/guide/custom-search-param-serialization.mddocs/router/framework/react/installation/migrate-from-react-location.mddocs/router/framework/react/api/router/useRouterStateHook.mddocs/router/framework/react/routing/file-naming-conventions.mddocs/router/framework/react/api/router/RouterType.mddocs/router/framework/react/how-to/migrate-from-react-router.mddocs/router/framework/react/how-to/debug-router-issues.mddocs/router/framework/react/api/router/RouterOptionsType.mddocs/router/framework/solid/installation/with-esbuild.mddocs/router/framework/react/how-to/navigate-with-search-params.mddocs/router/framework/react/faq.mddocs/router/framework/react/how-to/setup-testing.mddocs/router/framework/react/routing/routing-concepts.mddocs/router/framework/react/api/router/RouteApiType.mddocs/router/framework/react/installation/with-rspack.mddocs/start/framework/react/quick-start.mddocs/router/framework/react/how-to/setup-basic-search-params.mddocs/router/framework/react/api/router/RouterClass.mddocs/router/framework/react/api/router/useRouterHook.md
📚 Learning: 2025-10-08T08:11:47.088Z
Learnt from: nlynzaad
Repo: TanStack/router PR: 5402
File: packages/router-generator/tests/generator/no-formatted-route-tree/routeTree.nonnested.snapshot.ts:19-21
Timestamp: 2025-10-08T08:11:47.088Z
Learning: Test snapshot files in the router-generator tests directory (e.g., files matching the pattern `packages/router-generator/tests/generator/**/routeTree*.snapshot.ts` or `routeTree*.snapshot.js`) should not be modified or have issues flagged, as they are fixtures used to verify the generator's output and are intentionally preserved as-is.
Applied to files:
docs/router/framework/react/guide/creating-a-router.mddocs/router/framework/react/how-to/test-file-based-routing.mddocs/router/eslint/eslint-plugin-router.mddocs/router/framework/react/routing/code-based-routing.mddocs/router/framework/react/api/router/createRouteFunction.mddocs/router/framework/react/routing/route-trees.mddocs/router/framework/react/api/router/createLazyFileRouteFunction.mddocs/router/framework/react/api/router/RouterStateType.mddocs/router/framework/react/api/router/createRouterFunction.mddocs/router/framework/react/guide/code-splitting.mddocs/router/framework/solid/installation/with-webpack.mddocs/router/framework/react/installation/with-router-cli.mddocs/router/framework/react/api/router.mddocs/router/framework/react/how-to/validate-search-params.mddocs/router/framework/react/routing/file-based-routing.mddocs/router/framework/react/installation/migrate-from-react-location.mddocs/router/framework/react/routing/file-naming-conventions.mddocs/router/framework/react/api/router/RouterType.mddocs/router/framework/react/how-to/debug-router-issues.mddocs/router/framework/react/api/router/RouterOptionsType.mddocs/router/framework/solid/installation/with-esbuild.mddocs/router/framework/react/api/router/FileRouteClass.mddocs/router/framework/react/faq.mddocs/router/framework/react/how-to/setup-testing.mddocs/router/framework/react/guide/route-masking.md
📚 Learning: 2025-11-25T00:18:21.282Z
Learnt from: CR
Repo: TanStack/router PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-11-25T00:18:21.282Z
Learning: Applies to docs/**/*.md : Use relative internal documentation links relative to docs/ folder (e.g., ./guide/data-loading)
Applied to files:
docs/router/framework/react/guide/creating-a-router.mddocs/router/framework/react/how-to/test-file-based-routing.mddocs/router/framework/react/how-to/use-environment-variables.mddocs/start/framework/solid/build-from-scratch.mddocs/router/framework/react/guide/external-data-loading.mddocs/router/framework/react/routing/code-based-routing.mddocs/start/framework/react/guide/environment-variables.mddocs/router/framework/react/api/router/useMatchesHook.mddocs/router/framework/react/api/router/useLinkPropsHook.mddocs/router/framework/react/routing/route-trees.mddocs/router/framework/react/guide/path-params.mddocs/router/framework/react/api/router/createLazyFileRouteFunction.mddocs/start/framework/solid/quick-start.mddocs/router/framework/react/guide/code-splitting.mddocs/router/framework/react/how-to/setup-rbac.mddocs/router/framework/react/installation/with-esbuild.mddocs/router/framework/react/guide/ssr.mddocs/start/framework/solid/getting-started.mddocs/start/framework/react/guide/server-functions.mddocs/router/framework/react/guide/data-loading.mddocs/start/framework/solid/guide/hydration-errors.mddocs/start/framework/react/guide/authentication-overview.mddocs/router/framework/react/how-to/share-search-params-across-routes.mddocs/start/framework/react/getting-started.mddocs/router/framework/react/how-to/validate-search-params.mddocs/router/integrations/query.mddocs/router/framework/react/decisions-on-dx.mddocs/router/framework/react/routing/file-based-routing.mddocs/router/framework/react/guide/search-params.mddocs/router/framework/react/how-to/setup-authentication.mddocs/router/framework/react/api/router/useRouterStateHook.mddocs/router/framework/react/routing/file-naming-conventions.mddocs/router/framework/react/guide/deferred-data-loading.mddocs/start/framework/react/build-from-scratch.mddocs/start/framework/react/guide/authentication.mddocs/router/framework/react/how-to/debug-router-issues.mddocs/router/framework/react/api/router/RouteOptionsType.mddocs/router/framework/react/api/router/useMatchHook.mddocs/start/framework/solid/guide/code-execution-patterns.mddocs/router/framework/react/how-to/navigate-with-search-params.mddocs/router/framework/react/api/router/createFileRouteFunction.mddocs/router/framework/react/how-to/setup-testing.mddocs/router/framework/react/api/router/useLoaderDataHook.mddocs/router/framework/react/guide/route-masking.mddocs/start/framework/react/quick-start.mddocs/router/framework/react/how-to/setup-basic-search-params.mdscripts/verify-links.ts
📚 Learning: 2025-10-01T18:30:26.591Z
Learnt from: schiller-manuel
Repo: TanStack/router PR: 5330
File: packages/router-core/src/router.ts:2231-2245
Timestamp: 2025-10-01T18:30:26.591Z
Learning: In `packages/router-core/src/router.ts`, the `resolveRedirect` method intentionally strips the router's origin from redirect URLs when they match (e.g., `https://foo.com/bar` → `/bar` for same-origin redirects) while preserving the full URL for cross-origin redirects. This logic should not be removed or simplified to use `location.publicHref` directly.
Applied to files:
docs/router/framework/react/guide/creating-a-router.mddocs/router/framework/react/routing/code-based-routing.mddocs/router/framework/react/api/router/redirectFunction.mddocs/router/framework/react/api/router.mddocs/router/framework/react/api/router/RedirectType.mddocs/router/framework/react/decisions-on-dx.mddocs/router/framework/react/installation/migrate-from-react-location.mddocs/router/framework/react/api/router/useRouterStateHook.mddocs/router/framework/react/how-to/debug-router-issues.mddocs/router/framework/react/api/router/RouteOptionsType.mddocs/router/framework/react/api/router/useLocationHook.md
📚 Learning: 2025-10-14T18:59:33.990Z
Learnt from: FatahChan
Repo: TanStack/router PR: 5475
File: e2e/react-start/basic-prerendering/src/routes/redirect/$target/via-beforeLoad.tsx:8-0
Timestamp: 2025-10-14T18:59:33.990Z
Learning: In TanStack Router e2e test files, when a route parameter is validated at the route level (e.g., using zod in validateSearch or param validation), switch statements on that parameter do not require a default case, as the validation ensures only expected values will reach the switch.
Applied to files:
docs/router/framework/react/how-to/test-file-based-routing.mddocs/router/eslint/eslint-plugin-router.mddocs/router/framework/solid/installation/with-rspack.mddocs/router/framework/react/installation/with-webpack.mddocs/router/framework/react/routing/route-trees.mddocs/router/framework/react/installation/with-esbuild.mddocs/router/framework/solid/installation/with-webpack.mddocs/router/framework/react/installation/with-vite.mddocs/router/framework/react/how-to/validate-search-params.mddocs/router/framework/react/decisions-on-dx.mddocs/router/framework/react/how-to/setup-authentication.mddocs/router/framework/react/guide/custom-search-param-serialization.mddocs/router/framework/react/how-to/migrate-from-react-router.mddocs/router/framework/react/api/router/RouterOptionsType.mddocs/router/framework/solid/installation/with-esbuild.mddocs/router/framework/react/how-to/navigate-with-search-params.mddocs/router/framework/react/faq.mddocs/router/framework/react/installation/with-rspack.mddocs/router/framework/react/how-to/setup-basic-search-params.md
📚 Learning: 2025-11-02T16:16:24.898Z
Learnt from: nlynzaad
Repo: TanStack/router PR: 5732
File: packages/start-client-core/src/client/hydrateStart.ts:6-9
Timestamp: 2025-11-02T16:16:24.898Z
Learning: In packages/start-client-core/src/client/hydrateStart.ts, the `import/no-duplicates` ESLint disable is necessary for imports from `#tanstack-router-entry` and `#tanstack-start-entry` because both aliases resolve to the same placeholder file (`fake-start-entry.js`) in package.json during static analysis, even though they resolve to different files at runtime.
Applied to files:
docs/router/eslint/eslint-plugin-router.mddocs/start/framework/react/migrate-from-next-js.mddocs/router/framework/react/how-to/setup-ssr.md
📚 Learning: 2025-10-01T18:31:35.420Z
Learnt from: schiller-manuel
Repo: TanStack/router PR: 5330
File: e2e/react-start/custom-basepath/src/routeTree.gen.ts:58-61
Timestamp: 2025-10-01T18:31:35.420Z
Learning: Do not review files named `routeTree.gen.ts` in TanStack Router repositories, as these are autogenerated files that should not be manually modified.
Applied to files:
docs/router/eslint/eslint-plugin-router.mddocs/router/framework/react/routing/route-trees.mddocs/router/framework/react/guide/code-splitting.mddocs/router/framework/react/installation/manual.mddocs/router/framework/react/decisions-on-dx.mddocs/router/framework/react/routing/file-naming-conventions.mddocs/router/framework/react/api/router/FileRouteClass.mddocs/router/framework/react/faq.md
📚 Learning: 2025-09-22T00:56:53.426Z
Learnt from: nlynzaad
Repo: TanStack/router PR: 5182
File: e2e/react-router/basic-file-based/tests/non-nested-paths.spec.ts:167-172
Timestamp: 2025-09-22T00:56:53.426Z
Learning: In TanStack Router, underscores are intentionally stripped from route segments during path parsing, but preserved in base path segments. This is the expected behavior implemented in PR #5182.
Applied to files:
docs/router/eslint/eslint-plugin-router.mddocs/router/framework/react/guide/path-params.mddocs/router/framework/react/decisions-on-dx.mddocs/router/framework/react/routing/file-naming-conventions.mddocs/router/framework/react/how-to/migrate-from-react-router.mddocs/router/framework/react/faq.md
📚 Learning: 2025-11-25T00:18:21.282Z
Learnt from: CR
Repo: TanStack/router PR: 0
File: AGENTS.md:0-0
Timestamp: 2025-11-25T00:18:21.282Z
Learning: Test changes in relevant example apps by running cd examples/[framework]/[example] && pnpm dev
Applied to files:
docs/start/framework/solid/build-from-scratch.mddocs/start/framework/solid/quick-start.mddocs/start/framework/react/build-from-scratch.mddocs/start/framework/react/quick-start.md
📚 Learning: 2025-09-28T21:41:45.233Z
Learnt from: nlynzaad
Repo: TanStack/router PR: 5284
File: e2e/react-start/basic/server.js:50-0
Timestamp: 2025-09-28T21:41:45.233Z
Learning: In Express v5, catch-all routes must use named wildcards. Use `/*splat` to match everything except root path, or `/{*splat}` (with braces) to match including root path. The old `*` syntax is not allowed and will cause "Missing parameter name" errors. This breaking change requires explicit naming of wildcard parameters.
Applied to files:
docs/router/framework/react/routing/code-based-routing.mddocs/router/framework/react/guide/path-params.mddocs/router/framework/react/routing/file-naming-conventions.mddocs/router/framework/react/how-to/migrate-from-react-router.mddocs/router/framework/react/api/router/RouterOptionsType.md
📚 Learning: 2025-09-22T00:56:49.237Z
Learnt from: nlynzaad
Repo: TanStack/router PR: 5182
File: e2e/react-router/basic-file-based/src/routes/non-nested/named/$baz_.bar.tsx:3-5
Timestamp: 2025-09-22T00:56:49.237Z
Learning: In TanStack Router, underscores are intentionally stripped from route segments (e.g., `$baz_` becomes `baz` in generated types) but should be preserved in base path segments. This is the correct behavior as of the fix in PR #5182.
Applied to files:
docs/router/framework/react/guide/path-params.mddocs/router/framework/react/routing/file-naming-conventions.md
🪛 LanguageTool
docs/start/framework/react/guide/middleware.md
[style] ~519-~519: ‘exact same’ might be wordy. Consider a shorter alternative.
Context: ...server functions, so you can follow the exact same [Server Function Context Utilities](./s...
(EN_WORDINESS_PREMIUM_EXACT_SAME)
docs/router/framework/react/api/router/RouteType.md
[style] ~31-~31: Consider removing “of” to be more concise
Context: ...plitting. ### ...RouteApi methods - All of the methods from [RouteApi](./RouteApiTyp...
(ALL_OF_THE)
docs/start/framework/react/tutorial/fetching-external-api.md
[grammar] ~317-~317: Use a hyphen to join words.
Context: ...y for interactive features, you get fast loading pages plus all the modern functi...
(QB_NEW_EN_HYPHEN)
docs/router/framework/react/api/router/NavigateOptionsType.md
[style] ~53-~53: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... with ViewTransitionOptions["types"]. If the browser does not support viewTransi...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[grammar] ~53-~53: Ensure spelling is correct
Context: ...pes"]`. If the browser does not support viewTransition types, the navigation will fall back to...
(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)
docs/router/framework/react/api/router/useMatchesHook.md
[style] ~6-~6: Consider removing “of” to be more concise
Context: ...hook --- The useMatches hook returns all of the RouteMatch obj...
(ALL_OF_THE)
docs/router/framework/react/api/router/RouterStateType.md
[style] ~42-~42: Consider removing “of” to be more concise
Context: ...h>`](./RouteMatchType.md) - An array of all of the route matches that have been resolved a...
(ALL_OF_THE)
[style] ~47-~47: Consider removing “of” to be more concise
Context: ...h>`](./RouteMatchType.md) - An array of all of the route matches that are currently pendin...
(ALL_OF_THE)
docs/start/framework/solid/quick-start.md
[style] ~63-~63: Using many exclamation marks might seem excessive (in this case: 3 exclamation marks for a text that’s 1803 characters long)
Context: ...guide to learn how to use TanStack Start!
(EN_EXCESSIVE_EXCLAMATION)
docs/router/framework/react/api/router/useChildMatchesHook.md
[style] ~6-~6: Consider removing “of” to be more concise
Context: ...--- The useChildMatches hook returns all of the child [RouteMatch](./RouteMatchType.m...
(ALL_OF_THE)
docs/start/framework/react/getting-started.md
[style] ~24-~24: Using many exclamation marks might seem excessive (in this case: 3 exclamation marks for a text that’s 1018 characters long)
Context: ...guide to learn how to use TanStack Start!
(EN_EXCESSIVE_EXCLAMATION)
docs/router/framework/react/routing/file-based-routing.md
[style] ~106-~106: Consider using a more formal and expressive alternative to ‘awesome’.
Context: ...of your routes whilst still getting the awesome performance benefits of file-based rout...
(AWESOME)
docs/router/framework/react/routing/file-naming-conventions.md
[grammar] ~5-~5: Use a hyphen to join words.
Context: ...quires that you follow a few simple file naming conventions to ensure that your r...
(QB_NEW_EN_HYPHEN)
docs/router/framework/react/guide/deferred-data-loading.md
[style] ~80-~80: This phrase is redundant. Consider using “outside”.
Context: ...s the data fetching and caching for you outside of TanStack Router. So, instead of using ...
(OUTSIDE_OF)
[grammar] ~142-~142: Use a hyphen to join words.
Context: ... Guide](./ssr.md#streaming-ssr) for step by step instructions on how to set up yo...
(QB_NEW_EN_HYPHEN)
[grammar] ~142-~142: Use a hyphen to join words.
Context: ...ide](./ssr.md#streaming-ssr) for step by step instructions on how to set up your ...
(QB_NEW_EN_HYPHEN)
docs/router/framework/react/api/router/RouteOptionsType.md
[style] ~113-~113: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...ll be passed to the onError function. If thrown during a preload event, the erro...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~114-~114: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...he console and the preload will fail. - If this function returns a promise, the ro...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~114-~114: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... to suspend until the promise resolves. If this route's pendingMs threshold is rea...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~114-~114: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...onent` will be shown until it resolves. If the promise rejects, the route will be ...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~115-~115: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...e error will be thrown during render. - If this function returns a TRouteContext...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~116-~116: Consider a more expressive alternative.
Context: ...hem to a login page if they are not. To do this, you can either return or throw a ...
(DO_ACHIEVE)
[style] ~143-~143: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...ll be passed to the onError function. If thrown during a preload event, the erro...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~144-~144: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...he console and the preload will fail. - If this function returns a promise, the ro...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~144-~144: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ... to suspend until the promise resolves. If this route's pendingMs threshold is rea...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~144-~144: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...onent` will be shown until it resolves. If the promise rejects, the route will be ...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~145-~145: Three successive sentences begin with the same word. Consider rewording the sentence or use a thesaurus to find a synonym.
Context: ...e error will be thrown during render. - If this function returns a TLoaderData o...
(ENGLISH_WORD_REPEAT_BEGINNING_RULE)
[style] ~146-~146: Consider a more concise word here.
Context: ... returned by your loaderDeps function in order to appear. > 🚧 opts.navigate has been ...
(IN_ORDER_TO_PREMIUM)
docs/router/framework/react/api/router/useMatchHook.md
[style] ~6-~6: Consider removing “of” to be more concise
Context: ...nent tree. The raw route match contains all of the information about a route match in the ...
(ALL_OF_THE)
docs/router/framework/react/api/router/LinkPropsType.md
[style] ~19-~19: Consider removing “of” to be more concise
Context: ...de) } ``` ## LinkProps properties - All of the props from [ActiveLinkOptions](./Acti...
(ALL_OF_THE)
docs/router/framework/react/api/router/useParentMatchesHook.md
[style] ~6-~6: Consider removing “of” to be more concise
Context: ...-- The useParentMatches hook returns all of the parent [RouteMatch](./RouteMatchType....
(ALL_OF_THE)
🪛 markdownlint-cli2 (0.18.1)
docs/start/framework/react/getting-started.md
18-18: No empty links
(MD042, no-empty-links)
docs/router/framework/react/installation/migrate-from-react-location.md
73-73: Link text should be descriptive
(MD059, descriptive-link-text)
docs/router/framework/react/routing/file-naming-conventions.md
21-21: Fenced code blocks should have a language specified
(MD040, fenced-code-language)
docs/router/framework/react/api/router/RouteOptionsType.md
118-118: Link text should be descriptive
(MD059, descriptive-link-text)
148-148: Link text should be descriptive
(MD059, descriptive-link-text)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: Test
| - [`createFileRoute`](./router/createFileRouteFunction.md) | ||
| - [`createLazyFileRoute`](./router/createLazyFileRouteFunction.md) | ||
| - [`createRootRoute`](./router/createRootRouteFunction.md) | ||
| - [`createRootRouteWithContext`](./router/createRootRouteWithContextFunction.md) | ||
| - [`createRoute`](./router/createRouteFunction.md) | ||
| - [`createLazyRoute`](./router/createLazyRouteFunction.md) | ||
| - [`createRouteMask`](./router/createRouteMaskFunction.md) | ||
| - [`createRouter`](./router/createRouterFunction.md) | ||
| - [`defer`](./router/deferFunction.md) | ||
| - [`getRouteApi`](./router/getRouteApiFunction.md) | ||
| - [`isNotFound`](./router/isNotFoundFunction.md) | ||
| - [`isRedirect`](./router/isRedirectFunction.md) | ||
| - [`lazyRouteComponent`](./router/lazyRouteComponentFunction.md) | ||
| - [`linkOptions`](./router/linkOptions.md) | ||
| - [`notFound`](./router/notFoundFunction.md) | ||
| - [`redirect`](./router/redirectFunction.md) | ||
| - [`retainSearchParams`](./router/retainSearchParamsFunction.md) | ||
| - [`stripSearchParams`](./router/stripSearchParamsFunction.md) | ||
| - Components | ||
| - [`<Await>`](../router/awaitComponent.md) | ||
| - [`<CatchBoundary>`](../router/catchBoundaryComponent.md) | ||
| - [`<CatchNotFound>`](../router/catchNotFoundComponent.md) | ||
| - [`<ClientOnly>`](../router/clientOnlyComponent.md) | ||
| - [`<DefaultGlobalNotFound>`](../router/defaultGlobalNotFoundComponent.md) | ||
| - [`<ErrorComponent>`](../router/errorComponentComponent.md) | ||
| - [`<Link>`](../router/linkComponent.md) | ||
| - [`<MatchRoute>`](../router/matchRouteComponent.md) | ||
| - [`<Navigate>`](../router/navigateComponent.md) | ||
| - [`<NotFoundComponent>`](../router/notFoundComponentComponent.md) | ||
| - [`<Outlet>`](../router/outletComponent.md) | ||
| - [`<Await>`](./router/awaitComponent.md) | ||
| - [`<CatchBoundary>`](./router/catchBoundaryComponent.md) | ||
| - [`<CatchNotFound>`](./router/catchNotFoundComponent.md) | ||
| - [`<ClientOnly>`](./router/clientOnlyComponent.md) | ||
| - [`<DefaultGlobalNotFound>`](./router/defaultGlobalNotFoundComponent.md) | ||
| - [`<ErrorComponent>`](./router/errorComponentComponent.md) | ||
| - [`<Link>`](./router/linkComponent.md) | ||
| - [`<MatchRoute>`](./router/matchRouteComponent.md) | ||
| - [`<Navigate>`](./router/navigateComponent.md) | ||
| - [`<NotFoundComponent>`](./router/notFoundComponentComponent.md) | ||
| - [`<Outlet>`](./router/outletComponent.md) | ||
| - Hooks | ||
| - [`useAwaited`](../router/useAwaitedHook.md) | ||
| - [`useBlocker`](../router/useBlockerHook.md) | ||
| - [`useCanGoBack`](../router//useCanGoBack.md) | ||
| - [`useChildMatches`](../router/useChildMatchesHook.md) | ||
| - [`useLinkProps`](../router/useLinkPropsHook.md) | ||
| - [`useLoaderData`](../router/useLoaderDataHook.md) | ||
| - [`useLoaderDeps`](../router/useLoaderDepsHook.md) | ||
| - [`useLocation`](../router/useLocationHook.md) | ||
| - [`useMatch`](../router/useMatchHook.md) | ||
| - [`useMatchRoute`](../router/useMatchRouteHook.md) | ||
| - [`useMatches`](../router/useMatchesHook.md) | ||
| - [`useNavigate`](../router/useNavigateHook.md) | ||
| - [`useParentMatches`](../router/useParentMatchesHook.md) | ||
| - [`useParams`](../router/useParamsHook.md) | ||
| - [`useRouteContext`](../router/useRouteContextHook.md) | ||
| - [`useRouter`](../router/useRouterHook.md) | ||
| - [`useRouterState`](../router/useRouterStateHook.md) | ||
| - [`useSearch`](../router/useSearchHook.md) | ||
| - [`useAwaited`](./router/useAwaitedHook.md) | ||
| - [`useBlocker`](./router/useBlockerHook.md) | ||
| - [`useCanGoBack`](./router//useCanGoBack.md) | ||
| - [`useChildMatches`](./router/useChildMatchesHook.md) | ||
| - [`useLinkProps`](./router/useLinkPropsHook.md) | ||
| - [`useLoaderData`](./router/useLoaderDataHook.md) | ||
| - [`useLoaderDeps`](./router/useLoaderDepsHook.md) | ||
| - [`useLocation`](./router/useLocationHook.md) | ||
| - [`useMatch`](./router/useMatchHook.md) | ||
| - [`useMatchRoute`](./router/useMatchRouteHook.md) | ||
| - [`useMatches`](./router/useMatchesHook.md) | ||
| - [`useNavigate`](./router/useNavigateHook.md) | ||
| - [`useParentMatches`](./router/useParentMatchesHook.md) | ||
| - [`useParams`](./router/useParamsHook.md) | ||
| - [`useRouteContext`](./router/useRouteContextHook.md) | ||
| - [`useRouter`](./router/useRouterHook.md) | ||
| - [`useRouterState`](./router/useRouterStateHook.md) | ||
| - [`useSearch`](./router/useSearchHook.md) | ||
| - Types | ||
| - [`ActiveLinkOptions Type`](../router/ActiveLinkOptionsType.md) | ||
| - [`AsyncRouteComponent Type`](../router/AsyncRouteComponentType.md) | ||
| - [`HistoryState Interface`](../router/historyStateInterface.md) | ||
| - [`LinkOptions Type`](../router/LinkOptionsType.md) | ||
| - [`LinkProps Type`](../router/LinkPropsType.md) | ||
| - [`MatchRouteOptions Type`](../router/MatchRouteOptionsType.md) | ||
| - [`NavigateOptions Type`](../router/NavigateOptionsType.md) | ||
| - [`NotFoundError Type`](../router/NotFoundErrorType.md) | ||
| - [`ParsedHistoryState Type`](../router/ParsedHistoryStateType.md) | ||
| - [`ParsedLocation Type`](../router/ParsedLocationType.md) | ||
| - [`Redirect Type`](../router/RedirectType.md) | ||
| - [`Register Type`](../router/RegisterType.md) | ||
| - [`Route Type`](../router/RouteType.md) | ||
| - [`RouteApi Type`](../router/RouteApiType.md) | ||
| - [`RouteMask Type`](../router/RouteMaskType.md) | ||
| - [`RouteMatch Type`](../router/RouteMatchType.md) | ||
| - [`RouteOptions Type`](../router/RouteOptionsType.md) | ||
| - [`Router Type`](../router/RouterType.md) | ||
| - [`RouterEvents Type`](../router/RouterEventsType.md) | ||
| - [`RouterOptions Type`](../router/RouterOptionsType.md) | ||
| - [`RouterState Type`](../router/RouterStateType.md) | ||
| - [`ToMaskOptions Type`](../router/ToMaskOptionsType.md) | ||
| - [`ToOptions Type`](../router/ToOptionsType.md) | ||
| - [`UseMatchRouteOptions Type`](../router/UseMatchRouteOptionsType.md) | ||
| - [`ViewTransitionOptions Type`](../router/ViewTransitionOptionsType.md) | ||
| - [`ActiveLinkOptions Type`](./router/ActiveLinkOptionsType.md) | ||
| - [`AsyncRouteComponent Type`](./router/AsyncRouteComponentType.md) | ||
| - [`HistoryState Interface`](./router/historyStateInterface.md) | ||
| - [`LinkOptions Type`](./router/LinkOptionsType.md) | ||
| - [`LinkProps Type`](./router/LinkPropsType.md) | ||
| - [`MatchRouteOptions Type`](./router/MatchRouteOptionsType.md) | ||
| - [`NavigateOptions Type`](./router/NavigateOptionsType.md) | ||
| - [`NotFoundError Type`](./router/NotFoundErrorType.md) | ||
| - [`ParsedHistoryState Type`](./router/ParsedHistoryStateType.md) | ||
| - [`ParsedLocation Type`](./router/ParsedLocationType.md) | ||
| - [`Redirect Type`](./router/RedirectType.md) | ||
| - [`Register Type`](./router/RegisterType.md) | ||
| - [`Route Type`](./router/RouteType.md) | ||
| - [`RouteApi Type`](./router/RouteApiType.md) | ||
| - [`RouteMask Type`](./router/RouteMaskType.md) | ||
| - [`RouteMatch Type`](./router/RouteMatchType.md) | ||
| - [`RouteOptions Type`](./router/RouteOptionsType.md) | ||
| - [`Router Type`](./router/RouterType.md) | ||
| - [`RouterEvents Type`](./router/RouterEventsType.md) | ||
| - [`RouterOptions Type`](./router/RouterOptionsType.md) | ||
| - [`RouterState Type`](./router/RouterStateType.md) | ||
| - [`ToMaskOptions Type`](./router/ToMaskOptionsType.md) | ||
| - [`ToOptions Type`](./router/ToOptionsType.md) | ||
| - [`UseMatchRouteOptions Type`](./router/UseMatchRouteOptionsType.md) | ||
| - [`ViewTransitionOptions Type`](./router/ViewTransitionOptionsType.md) | ||
| - ⚠️ Deprecated | ||
| - [`FileRoute Class`](../router/FileRouteClass.md) | ||
| - [`Route Class`](../router/RouteClass.md) | ||
| - [`Router Class`](../router/RouterClass.md) | ||
| - [`RouteApi Class`](../router/RouteApiClass.md) | ||
| - [`RootRoute Class`](../router/RootRouteClass.md) | ||
| - [`NotFoundRoute Class`](../router/NotFoundRouteClass.md) | ||
| - [`rootRouteWithContext Function`](../router/rootRouteWithContextFunction.md) | ||
| - [`FileRoute Class`](./router/FileRouteClass.md) | ||
| - [`Route Class`](./router/RouteClass.md) | ||
| - [`Router Class`](./router/RouterClass.md) | ||
| - [`RouteApi Class`](./router/RouteApiClass.md) | ||
| - [`RootRoute Class`](./router/RootRouteClass.md) | ||
| - [`NotFoundRoute Class`](./router/NotFoundRouteClass.md) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix malformed link path on line 40.
Line 40 contains a double slash in the link path: ./router//useCanGoBack.md. This should be corrected to ./router/useCanGoBack.md to maintain consistency and prevent link resolution issues. All other link updates in this file correctly use the ./router/ prefix.
Apply this diff to fix the double slash:
- - [`useCanGoBack`](./router//useCanGoBack.md)
+ - [`useCanGoBack`](./router/useCanGoBack.md)📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| - [`createFileRoute`](./router/createFileRouteFunction.md) | |
| - [`createLazyFileRoute`](./router/createLazyFileRouteFunction.md) | |
| - [`createRootRoute`](./router/createRootRouteFunction.md) | |
| - [`createRootRouteWithContext`](./router/createRootRouteWithContextFunction.md) | |
| - [`createRoute`](./router/createRouteFunction.md) | |
| - [`createLazyRoute`](./router/createLazyRouteFunction.md) | |
| - [`createRouteMask`](./router/createRouteMaskFunction.md) | |
| - [`createRouter`](./router/createRouterFunction.md) | |
| - [`defer`](./router/deferFunction.md) | |
| - [`getRouteApi`](./router/getRouteApiFunction.md) | |
| - [`isNotFound`](./router/isNotFoundFunction.md) | |
| - [`isRedirect`](./router/isRedirectFunction.md) | |
| - [`lazyRouteComponent`](./router/lazyRouteComponentFunction.md) | |
| - [`linkOptions`](./router/linkOptions.md) | |
| - [`notFound`](./router/notFoundFunction.md) | |
| - [`redirect`](./router/redirectFunction.md) | |
| - [`retainSearchParams`](./router/retainSearchParamsFunction.md) | |
| - [`stripSearchParams`](./router/stripSearchParamsFunction.md) | |
| - Components | |
| - [`<Await>`](../router/awaitComponent.md) | |
| - [`<CatchBoundary>`](../router/catchBoundaryComponent.md) | |
| - [`<CatchNotFound>`](../router/catchNotFoundComponent.md) | |
| - [`<ClientOnly>`](../router/clientOnlyComponent.md) | |
| - [`<DefaultGlobalNotFound>`](../router/defaultGlobalNotFoundComponent.md) | |
| - [`<ErrorComponent>`](../router/errorComponentComponent.md) | |
| - [`<Link>`](../router/linkComponent.md) | |
| - [`<MatchRoute>`](../router/matchRouteComponent.md) | |
| - [`<Navigate>`](../router/navigateComponent.md) | |
| - [`<NotFoundComponent>`](../router/notFoundComponentComponent.md) | |
| - [`<Outlet>`](../router/outletComponent.md) | |
| - [`<Await>`](./router/awaitComponent.md) | |
| - [`<CatchBoundary>`](./router/catchBoundaryComponent.md) | |
| - [`<CatchNotFound>`](./router/catchNotFoundComponent.md) | |
| - [`<ClientOnly>`](./router/clientOnlyComponent.md) | |
| - [`<DefaultGlobalNotFound>`](./router/defaultGlobalNotFoundComponent.md) | |
| - [`<ErrorComponent>`](./router/errorComponentComponent.md) | |
| - [`<Link>`](./router/linkComponent.md) | |
| - [`<MatchRoute>`](./router/matchRouteComponent.md) | |
| - [`<Navigate>`](./router/navigateComponent.md) | |
| - [`<NotFoundComponent>`](./router/notFoundComponentComponent.md) | |
| - [`<Outlet>`](./router/outletComponent.md) | |
| - Hooks | |
| - [`useAwaited`](../router/useAwaitedHook.md) | |
| - [`useBlocker`](../router/useBlockerHook.md) | |
| - [`useCanGoBack`](../router//useCanGoBack.md) | |
| - [`useChildMatches`](../router/useChildMatchesHook.md) | |
| - [`useLinkProps`](../router/useLinkPropsHook.md) | |
| - [`useLoaderData`](../router/useLoaderDataHook.md) | |
| - [`useLoaderDeps`](../router/useLoaderDepsHook.md) | |
| - [`useLocation`](../router/useLocationHook.md) | |
| - [`useMatch`](../router/useMatchHook.md) | |
| - [`useMatchRoute`](../router/useMatchRouteHook.md) | |
| - [`useMatches`](../router/useMatchesHook.md) | |
| - [`useNavigate`](../router/useNavigateHook.md) | |
| - [`useParentMatches`](../router/useParentMatchesHook.md) | |
| - [`useParams`](../router/useParamsHook.md) | |
| - [`useRouteContext`](../router/useRouteContextHook.md) | |
| - [`useRouter`](../router/useRouterHook.md) | |
| - [`useRouterState`](../router/useRouterStateHook.md) | |
| - [`useSearch`](../router/useSearchHook.md) | |
| - [`useAwaited`](./router/useAwaitedHook.md) | |
| - [`useBlocker`](./router/useBlockerHook.md) | |
| - [`useCanGoBack`](./router//useCanGoBack.md) | |
| - [`useChildMatches`](./router/useChildMatchesHook.md) | |
| - [`useLinkProps`](./router/useLinkPropsHook.md) | |
| - [`useLoaderData`](./router/useLoaderDataHook.md) | |
| - [`useLoaderDeps`](./router/useLoaderDepsHook.md) | |
| - [`useLocation`](./router/useLocationHook.md) | |
| - [`useMatch`](./router/useMatchHook.md) | |
| - [`useMatchRoute`](./router/useMatchRouteHook.md) | |
| - [`useMatches`](./router/useMatchesHook.md) | |
| - [`useNavigate`](./router/useNavigateHook.md) | |
| - [`useParentMatches`](./router/useParentMatchesHook.md) | |
| - [`useParams`](./router/useParamsHook.md) | |
| - [`useRouteContext`](./router/useRouteContextHook.md) | |
| - [`useRouter`](./router/useRouterHook.md) | |
| - [`useRouterState`](./router/useRouterStateHook.md) | |
| - [`useSearch`](./router/useSearchHook.md) | |
| - Types | |
| - [`ActiveLinkOptions Type`](../router/ActiveLinkOptionsType.md) | |
| - [`AsyncRouteComponent Type`](../router/AsyncRouteComponentType.md) | |
| - [`HistoryState Interface`](../router/historyStateInterface.md) | |
| - [`LinkOptions Type`](../router/LinkOptionsType.md) | |
| - [`LinkProps Type`](../router/LinkPropsType.md) | |
| - [`MatchRouteOptions Type`](../router/MatchRouteOptionsType.md) | |
| - [`NavigateOptions Type`](../router/NavigateOptionsType.md) | |
| - [`NotFoundError Type`](../router/NotFoundErrorType.md) | |
| - [`ParsedHistoryState Type`](../router/ParsedHistoryStateType.md) | |
| - [`ParsedLocation Type`](../router/ParsedLocationType.md) | |
| - [`Redirect Type`](../router/RedirectType.md) | |
| - [`Register Type`](../router/RegisterType.md) | |
| - [`Route Type`](../router/RouteType.md) | |
| - [`RouteApi Type`](../router/RouteApiType.md) | |
| - [`RouteMask Type`](../router/RouteMaskType.md) | |
| - [`RouteMatch Type`](../router/RouteMatchType.md) | |
| - [`RouteOptions Type`](../router/RouteOptionsType.md) | |
| - [`Router Type`](../router/RouterType.md) | |
| - [`RouterEvents Type`](../router/RouterEventsType.md) | |
| - [`RouterOptions Type`](../router/RouterOptionsType.md) | |
| - [`RouterState Type`](../router/RouterStateType.md) | |
| - [`ToMaskOptions Type`](../router/ToMaskOptionsType.md) | |
| - [`ToOptions Type`](../router/ToOptionsType.md) | |
| - [`UseMatchRouteOptions Type`](../router/UseMatchRouteOptionsType.md) | |
| - [`ViewTransitionOptions Type`](../router/ViewTransitionOptionsType.md) | |
| - [`ActiveLinkOptions Type`](./router/ActiveLinkOptionsType.md) | |
| - [`AsyncRouteComponent Type`](./router/AsyncRouteComponentType.md) | |
| - [`HistoryState Interface`](./router/historyStateInterface.md) | |
| - [`LinkOptions Type`](./router/LinkOptionsType.md) | |
| - [`LinkProps Type`](./router/LinkPropsType.md) | |
| - [`MatchRouteOptions Type`](./router/MatchRouteOptionsType.md) | |
| - [`NavigateOptions Type`](./router/NavigateOptionsType.md) | |
| - [`NotFoundError Type`](./router/NotFoundErrorType.md) | |
| - [`ParsedHistoryState Type`](./router/ParsedHistoryStateType.md) | |
| - [`ParsedLocation Type`](./router/ParsedLocationType.md) | |
| - [`Redirect Type`](./router/RedirectType.md) | |
| - [`Register Type`](./router/RegisterType.md) | |
| - [`Route Type`](./router/RouteType.md) | |
| - [`RouteApi Type`](./router/RouteApiType.md) | |
| - [`RouteMask Type`](./router/RouteMaskType.md) | |
| - [`RouteMatch Type`](./router/RouteMatchType.md) | |
| - [`RouteOptions Type`](./router/RouteOptionsType.md) | |
| - [`Router Type`](./router/RouterType.md) | |
| - [`RouterEvents Type`](./router/RouterEventsType.md) | |
| - [`RouterOptions Type`](./router/RouterOptionsType.md) | |
| - [`RouterState Type`](./router/RouterStateType.md) | |
| - [`ToMaskOptions Type`](./router/ToMaskOptionsType.md) | |
| - [`ToOptions Type`](./router/ToOptionsType.md) | |
| - [`UseMatchRouteOptions Type`](./router/UseMatchRouteOptionsType.md) | |
| - [`ViewTransitionOptions Type`](./router/ViewTransitionOptionsType.md) | |
| - ⚠️ Deprecated | |
| - [`FileRoute Class`](../router/FileRouteClass.md) | |
| - [`Route Class`](../router/RouteClass.md) | |
| - [`Router Class`](../router/RouterClass.md) | |
| - [`RouteApi Class`](../router/RouteApiClass.md) | |
| - [`RootRoute Class`](../router/RootRouteClass.md) | |
| - [`NotFoundRoute Class`](../router/NotFoundRouteClass.md) | |
| - [`rootRouteWithContext Function`](../router/rootRouteWithContextFunction.md) | |
| - [`FileRoute Class`](./router/FileRouteClass.md) | |
| - [`Route Class`](./router/RouteClass.md) | |
| - [`Router Class`](./router/RouterClass.md) | |
| - [`RouteApi Class`](./router/RouteApiClass.md) | |
| - [`RootRoute Class`](./router/RootRouteClass.md) | |
| - [`NotFoundRoute Class`](./router/NotFoundRouteClass.md) | |
| - [`createFileRoute`](./router/createFileRouteFunction.md) | |
| - [`createLazyFileRoute`](./router/createLazyFileRouteFunction.md) | |
| - [`createRootRoute`](./router/createRootRouteFunction.md) | |
| - [`createRootRouteWithContext`](./router/createRootRouteWithContextFunction.md) | |
| - [`createRoute`](./router/createRouteFunction.md) | |
| - [`createLazyRoute`](./router/createLazyRouteFunction.md) | |
| - [`createRouteMask`](./router/createRouteMaskFunction.md) | |
| - [`createRouter`](./router/createRouterFunction.md) | |
| - [`defer`](./router/deferFunction.md) | |
| - [`getRouteApi`](./router/getRouteApiFunction.md) | |
| - [`isNotFound`](./router/isNotFoundFunction.md) | |
| - [`isRedirect`](./router/isRedirectFunction.md) | |
| - [`lazyRouteComponent`](./router/lazyRouteComponentFunction.md) | |
| - [`linkOptions`](./router/linkOptions.md) | |
| - [`notFound`](./router/notFoundFunction.md) | |
| - [`redirect`](./router/redirectFunction.md) | |
| - [`retainSearchParams`](./router/retainSearchParamsFunction.md) | |
| - [`stripSearchParams`](./router/stripSearchParamsFunction.md) | |
| - Components | |
| - [`<Await>`](./router/awaitComponent.md) | |
| - [`<CatchBoundary>`](./router/catchBoundaryComponent.md) | |
| - [`<CatchNotFound>`](./router/catchNotFoundComponent.md) | |
| - [`<ClientOnly>`](./router/clientOnlyComponent.md) | |
| - [`<DefaultGlobalNotFound>`](./router/defaultGlobalNotFoundComponent.md) | |
| - [`<ErrorComponent>`](./router/errorComponentComponent.md) | |
| - [`<Link>`](./router/linkComponent.md) | |
| - [`<MatchRoute>`](./router/matchRouteComponent.md) | |
| - [`<Navigate>`](./router/navigateComponent.md) | |
| - [`<NotFoundComponent>`](./router/notFoundComponentComponent.md) | |
| - [`<Outlet>`](./router/outletComponent.md) | |
| - Hooks | |
| - [`useAwaited`](./router/useAwaitedHook.md) | |
| - [`useBlocker`](./router/useBlockerHook.md) | |
| - [`useCanGoBack`](./router/useCanGoBack.md) | |
| - [`useChildMatches`](./router/useChildMatchesHook.md) | |
| - [`useLinkProps`](./router/useLinkPropsHook.md) | |
| - [`useLoaderData`](./router/useLoaderDataHook.md) | |
| - [`useLoaderDeps`](./router/useLoaderDepsHook.md) | |
| - [`useLocation`](./router/useLocationHook.md) | |
| - [`useMatch`](./router/useMatchHook.md) | |
| - [`useMatchRoute`](./router/useMatchRouteHook.md) | |
| - [`useMatches`](./router/useMatchesHook.md) | |
| - [`useNavigate`](./router/useNavigateHook.md) | |
| - [`useParentMatches`](./router/useParentMatchesHook.md) | |
| - [`useParams`](./router/useParamsHook.md) | |
| - [`useRouteContext`](./router/useRouteContextHook.md) | |
| - [`useRouter`](./router/useRouterHook.md) | |
| - [`useRouterState`](./router/useRouterStateHook.md) | |
| - [`useSearch`](./router/useSearchHook.md) | |
| - Types | |
| - [`ActiveLinkOptions Type`](./router/ActiveLinkOptionsType.md) | |
| - [`AsyncRouteComponent Type`](./router/AsyncRouteComponentType.md) | |
| - [`HistoryState Interface`](./router/historyStateInterface.md) | |
| - [`LinkOptions Type`](./router/LinkOptionsType.md) | |
| - [`LinkProps Type`](./router/LinkPropsType.md) | |
| - [`MatchRouteOptions Type`](./router/MatchRouteOptionsType.md) | |
| - [`NavigateOptions Type`](./router/NavigateOptionsType.md) | |
| - [`NotFoundError Type`](./router/NotFoundErrorType.md) | |
| - [`ParsedHistoryState Type`](./router/ParsedHistoryStateType.md) | |
| - [`ParsedLocation Type`](./router/ParsedLocationType.md) | |
| - [`Redirect Type`](./router/RedirectType.md) | |
| - [`Register Type`](./router/RegisterType.md) | |
| - [`Route Type`](./router/RouteType.md) | |
| - [`RouteApi Type`](./router/RouteApiType.md) | |
| - [`RouteMask Type`](./router/RouteMaskType.md) | |
| - [`RouteMatch Type`](./router/RouteMatchType.md) | |
| - [`RouteOptions Type`](./router/RouteOptionsType.md) | |
| - [`Router Type`](./router/RouterType.md) | |
| - [`RouterEvents Type`](./router/RouterEventsType.md) | |
| - [`RouterOptions Type`](./router/RouterOptionsType.md) | |
| - [`RouterState Type`](./router/RouterStateType.md) | |
| - [`ToMaskOptions Type`](./router/ToMaskOptionsType.md) | |
| - [`ToOptions Type`](./router/ToOptionsType.md) | |
| - [`UseMatchRouteOptions Type`](./router/UseMatchRouteOptionsType.md) | |
| - [`ViewTransitionOptions Type`](./router/ViewTransitionOptionsType.md) | |
| - ⚠️ Deprecated | |
| - [`FileRoute Class`](./router/FileRouteClass.md) | |
| - [`Route Class`](./router/RouteClass.md) | |
| - [`Router Class`](./router/RouterClass.md) | |
| - [`RouteApi Class`](./router/RouteApiClass.md) | |
| - [`RootRoute Class`](./router/RootRouteClass.md) | |
| - [`NotFoundRoute Class`](./router/NotFoundRouteClass.md) |
🤖 Prompt for AI Agents
In docs/router/framework/react/api/router.md around lines 7 to 88, the link on
line 40 contains a double slash (`./router//useCanGoBack.md`); update that link
to the correct path `./router/useCanGoBack.md` so it matches the other entries
and resolves properly.
|
|
||
| > [!IMPORTANT] | ||
| > The automatic code-splitting feature is **ONLY** available when you are using file-based routing with one of our [supported bundlers](../../routing/file-based-routing.md#getting-started-with-file-based-routing). | ||
| > The automatic code-splitting feature is **ONLY** available when you are using file-based routing with one of our [supported bundlers](../routing/file-based-routing.md#getting-started-with-file-based-routing). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Incorrect relative path depth for cross-directory link.
The link ../routing/file-based-routing.md resolves to docs/router/framework/routing/ which does not exist. Since the target file is at docs/router/routing/, the path should use two levels of ../ to reach the router directory level first.
- > [!IMPORTANT]
- > The automatic code-splitting feature is **ONLY** available when you are using file-based routing with one of our [supported bundlers](../routing/file-based-routing.md#getting-started-with-file-based-routing).
+ > [!IMPORTANT]
+ > The automatic code-splitting feature is **ONLY** available when you are using file-based routing with one of our [supported bundlers](../../routing/file-based-routing.md#getting-started-with-file-based-routing).📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| > The automatic code-splitting feature is **ONLY** available when you are using file-based routing with one of our [supported bundlers](../routing/file-based-routing.md#getting-started-with-file-based-routing). | |
| > [!IMPORTANT] | |
| > The automatic code-splitting feature is **ONLY** available when you are using file-based routing with one of our [supported bundlers](../../../routing/file-based-routing.md#getting-started-with-file-based-routing). |
🤖 Prompt for AI Agents
In docs/router/framework/react/guide/code-splitting.md around line 74, the
relative link ../routing/file-based-routing.md resolves to
docs/router/framework/routing/ (nonexistent) instead of docs/router/routing/;
update the link to use two levels up (../../routing/file-based-routing.md) so it
correctly points to the target file under docs/router/routing/.
| - [File-Based Routing Guide](../routing/file-based-routing.md) - Detailed routing concepts | ||
| - [Navigation Guide](../guide/navigation.md) - Complete navigation patterns | ||
| - [Search Parameters Guide](../guide/search-params.md) - Advanced search param usage | ||
| - [Type Safety Guide](../guide/type-safety.md) - TypeScript integration details |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix incorrect relative link depths in Related Resources section.
The relative paths use insufficient .. segments. From docs/router/framework/react/how-to/, these paths need to ascend 4 levels to reach the docs root, then descend into the target directories.
Current paths (incorrect):
../routing/file-based-routing.md→ resolves todocs/router/framework/react/routing/file-based-routing.md❌../guide/navigation.md→ resolves todocs/router/framework/react/guide/navigation.md❌
Correct paths should be:
../../../routing/file-based-routing.md→docs/routing/file-based-routing.md✓../../../guide/navigation.md→docs/guide/navigation.md✓
Additionally, per coding guidelines for docs/**/*.md files, consider using docs-root-relative paths like ./routing/file-based-routing.md for consistency.
## Related Resources
-- [TanStack Router Documentation](https://tanstack.com/router) - Complete API reference
-- [File-Based Routing Guide](../routing/file-based-routing.md) - Detailed routing concepts
-- [Navigation Guide](../guide/navigation.md) - Complete navigation patterns
-- [Search Parameters Guide](../guide/search-params.md) - Advanced search param usage
-- [Type Safety Guide](../guide/type-safety.md) - TypeScript integration details
+- [TanStack Router Documentation](https://tanstack.com/router) - Complete API reference
+- [File-Based Routing Guide](../../../routing/file-based-routing.md) - Detailed routing concepts
+- [Navigation Guide](../../../guide/navigation.md) - Complete navigation patterns
+- [Search Parameters Guide](../../../guide/search-params.md) - Advanced search param usage
+- [Type Safety Guide](../../../guide/type-safety.md) - TypeScript integration detailsCommittable suggestion skipped: line range outside the PR's diff.
🤖 Prompt for AI Agents
In docs/router/framework/react/how-to/migrate-from-react-router.md around lines
740 to 743, the Related Resources links use one-level-up paths (../...) that
resolve into the current section instead of the docs root; update each link to
the corrected path prefix (use ../../../routing/file-based-routing.md,
../../../guide/navigation.md, ../../../guide/search-params.md,
../../../guide/type-safety.md) so they resolve to docs/*, or alternatively
replace them with docs-root-relative paths per guidelines (e.g.,
./routing/file-based-routing.md) for consistency.
| - [SSR Guide (Detailed)](../guide/ssr.md) - Comprehensive SSR concepts, utilities, and theory | ||
| - [Data Loading](../guide/data-loading.md) - SSR-compatible data loading patterns |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Align internal documentation links with coding guideline format.
Lines 543–544 use ../guide/ relative paths, but the coding guideline specifies links should use the ./guide/... format (relative to docs/ folder root).
Apply this diff to align with the guideline:
- [SSR Guide (Detailed)](../guide/ssr.md) - Comprehensive SSR concepts, utilities, and theory
- [Data Loading](../guide/data-loading.md) - SSR-compatible data loading patterns
+ [SSR Guide (Detailed)](./guide/ssr.md) - Comprehensive SSR concepts, utilities, and theory
+ [Data Loading](./guide/data-loading.md) - SSR-compatible data loading patternsBased on coding guidelines: "Use relative internal documentation links relative to docs/ folder (e.g., ./guide/data-loading)"
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| - [SSR Guide (Detailed)](../guide/ssr.md) - Comprehensive SSR concepts, utilities, and theory | |
| - [Data Loading](../guide/data-loading.md) - SSR-compatible data loading patterns | |
| - [SSR Guide (Detailed)](./guide/ssr.md) - Comprehensive SSR concepts, utilities, and theory | |
| - [Data Loading](./guide/data-loading.md) - SSR-compatible data loading patterns |
🤖 Prompt for AI Agents
In docs/router/framework/react/how-to/setup-ssr.md around lines 543 to 544, the
two internal links use ../guide/... while the project's guideline requires
internal docs links be relative to the docs/ root using ./guide/.... Update each
link to use the ./guide/... form (e.g., change ../guide/ssr.md to ./guide/ssr.md
and ../guide/data-loading.md to ./guide/data-loading.md) so they follow the
coding guideline.
| ## Related Resources | ||
|
|
||
| - [Code-Based Routing Guide](../../routing/code-based-routing.md) - Understanding code-based routing | ||
| - [Code-Based Routing Guide](../routing/code-based-routing.md) - Understanding code-based routing |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Incorrect relative path depth for cross-directory link.
The link ../routing/code-based-routing.md resolves to docs/router/framework/routing/ which does not exist. The target file is at docs/router/routing/, requiring two directory levels to be traversed from docs/router/framework/react/how-to/.
- - [Code-Based Routing Guide](../routing/code-based-routing.md) - Understanding code-based routing
+ - [Code-Based Routing Guide](../../routing/code-based-routing.md) - Understanding code-based routing📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| - [Code-Based Routing Guide](../routing/code-based-routing.md) - Understanding code-based routing | |
| - [Code-Based Routing Guide](../../../routing/code-based-routing.md) - Understanding code-based routing |
🤖 Prompt for AI Agents
In docs/router/framework/react/how-to/setup-testing.md around line 971 the
relative link ../routing/code-based-routing.md points to
docs/router/framework/routing/ which doesn't exist; update the link to traverse
two levels up to the actual target (use ../../routing/code-based-routing.md) so
it resolves to docs/router/routing/code-based-routing.md and ensure the link
text stays the same.
| If these defaults work for your project, you don't need to configure anything at all! However, if you need to customize the configuration, you can do so by editing the configuration object passed into the `tanstackRouter` function. | ||
|
|
||
| You can find all the available configuration options in the [File-based Routing API Reference](../../../../api/file-based-routing.md). | ||
| You can find all the available configuration options in the [File-based Routing API Reference](../../../api/file-based-routing.md). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion | 🟠 Major
🧩 Analysis chain
🏁 Script executed:
# First, check if the target file exists at the resolved path
find docs -name "file-based-routing.md" -type fRepository: TanStack/router
Length of output: 212
🏁 Script executed:
# Verify the link path from the file's perspective
file_path="docs/router/framework/solid/installation/with-webpack.md"
link_target="../../../api/file-based-routing.md"
# Show the file structure to understand the path resolution
echo "=== File location ==="
echo "$file_path"
echo -e "\n=== Resolving link path from installation directory ==="
cd docs/router/framework/solid/installation
pwd
echo "Link: $link_target"
ls -la "$link_target" 2>&1 || echo "Link target not found at: $(pwd)/$link_target"
cd - > /dev/null
echo -e "\n=== Directory structure around target ==="
ls -la docs/router/api/ 2>&1 | head -20Repository: TanStack/router
Length of output: 604
🏁 Script executed:
# Check the exact content around line 92 to confirm context
head -95 docs/router/framework/solid/installation/with-webpack.md | tail -10Repository: TanStack/router
Length of output: 576
🏁 Script executed:
# Check how links are formatted in other docs files
echo "=== Sample links from other docs files ==="
rg '\]\(\.' docs/ --max-count=10 -t md | head -20Repository: TanStack/router
Length of output: 4164
🏁 Script executed:
# Check the specific file for other links to understand the pattern
echo "=== All links in with-webpack.md ==="
rg '\]\(\.\.' docs/router/framework/solid/installation/with-webpack.md -t mdRepository: TanStack/router
Length of output: 227
🏁 Script executed:
# Check a nearby file for link patterns
echo "=== Links in other installation guides ==="
rg '\]\(' docs/router/framework/solid/installation/ -t md -A 1 | head -30Repository: TanStack/router
Length of output: 3586
Link path does not follow the coding guideline for docs files.
The link uses a relative file path (../../../api/file-based-routing.md) that correctly resolves to the target file. However, the coding guideline specifies that links in docs/**/*.md files should use relative paths from the docs folder (e.g., ./router/api/file-based-routing.md). Update the link format to comply with the guideline.
🤖 Prompt for AI Agents
In docs/router/framework/solid/installation/with-webpack.md around line 92, the
link uses a relative path ../../../api/file-based-routing.md which doesn't
follow the docs guideline; update the link to the docs-relative path starting
from the docs folder (example: ./router/api/file-based-routing.md) so the
markdown link becomes the docs-compliant path pointing to
router/api/file-based-routing.md.
| The start handler is responsible for matching an incoming request to a server route and executing the appropriate middleware and handler. | ||
|
|
||
| If you need to customize the server handler, you can do so by creating a custom handler and then passing the event to the start handler. See [The Server Entry Point](../server-entry-point). | ||
| If you need to customize the server handler, you can do so by creating a custom handler and then passing the event to the start handler. See [The Server Entry Point](./server-entry-point). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add missing .md extension to link.
The link target is missing the .md file extension, which will break link resolution. All other documentation links in this PR include the extension—this should too.
-If you need to customize the server handler, you can do so by creating a custom handler and then passing the event to the start handler. See [The Server Entry Point](./server-entry-point).
+If you need to customize the server handler, you can do so by creating a custom handler and then passing the event to the start handler. See [The Server Entry Point](./server-entry-point.md).📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| If you need to customize the server handler, you can do so by creating a custom handler and then passing the event to the start handler. See [The Server Entry Point](./server-entry-point). | |
| If you need to customize the server handler, you can do so by creating a custom handler and then passing the event to the start handler. See [The Server Entry Point](./server-entry-point.md). |
🤖 Prompt for AI Agents
In docs/start/framework/react/guide/server-routes.md around line 113, the link
to "The Server Entry Point" is missing the .md extension which can break link
resolution; update the markdown link target to include the .md extension (change
./server-entry-point to ./server-entry-point.md) so it matches other docs and
resolves correctly.
| You've successfully built a movie discovery app that integrates with an external API using TanStack Start. This tutorial demonstrated how to use route loaders for server-side data fetching and building UI components with external data. | ||
|
|
||
| While fetching data at build time in TanStack Start is perfect for static content like blog posts or product pages, it's not ideal for interactive apps. If you need features like real-time updates, caching, or infinite scrolling, you'll want to use [TanStack Query](query/latest) on the client side instead. TanStack Query makes it easy to handle dynamic data with built-in caching, background updates, and smooth user interactions. By using TanStack Start for static content and TanStack Query for interactive features, you get fast loading pages plus all the modern functionality users expect. | ||
| While fetching data at build time in TanStack Start is perfect for static content like blog posts or product pages, it's not ideal for interactive apps. If you need features like real-time updates, caching, or infinite scrolling, you'll want to use [TanStack Query](/query/latest) on the client side instead. TanStack Query makes it easy to handle dynamic data with built-in caching, background updates, and smooth user interactions. By using TanStack Start for static content and TanStack Query for interactive features, you get fast loading pages plus all the modern functionality users expect. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Apply grammar fix: hyphenate compound adjective.
The phrase "fast loading pages" should be "fast-loading pages" to correctly hyphenate the compound adjective modifying "pages".
-While fetching data at build time in TanStack Start is perfect for static content like blog posts or product pages, it's not ideal for interactive apps. If you need features like real-time updates, caching, or infinite scrolling, you'll want to use [TanStack Query](/query/latest) on the client side instead. TanStack Query makes it easy to handle dynamic data with built-in caching, background updates, and smooth user interactions. By using TanStack Start for static content and TanStack Query for interactive features, you get fast loading pages plus all the modern functionality users expect.
+While fetching data at build time in TanStack Start is perfect for static content like blog posts or product pages, it's not ideal for interactive apps. If you need features like real-time updates, caching, or infinite scrolling, you'll want to use [TanStack Query](/query/latest) on the client side instead. TanStack Query makes it easy to handle dynamic data with built-in caching, background updates, and smooth user interactions. By using TanStack Start for static content and TanStack Query for interactive features, you get fast-loading pages plus all the modern functionality users expect.📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| While fetching data at build time in TanStack Start is perfect for static content like blog posts or product pages, it's not ideal for interactive apps. If you need features like real-time updates, caching, or infinite scrolling, you'll want to use [TanStack Query](/query/latest) on the client side instead. TanStack Query makes it easy to handle dynamic data with built-in caching, background updates, and smooth user interactions. By using TanStack Start for static content and TanStack Query for interactive features, you get fast loading pages plus all the modern functionality users expect. | |
| While fetching data at build time in TanStack Start is perfect for static content like blog posts or product pages, it's not ideal for interactive apps. If you need features like real-time updates, caching, or infinite scrolling, you'll want to use [TanStack Query](/query/latest) on the client side instead. TanStack Query makes it easy to handle dynamic data with built-in caching, background updates, and smooth user interactions. By using TanStack Start for static content and TanStack Query for interactive features, you get fast-loading pages plus all the modern functionality users expect. |
🧰 Tools
🪛 LanguageTool
[grammar] ~317-~317: Use a hyphen to join words.
Context: ...y for interactive features, you get fast loading pages plus all the modern functi...
(QB_NEW_EN_HYPHEN)
🤖 Prompt for AI Agents
In docs/start/framework/react/tutorial/fetching-external-api.md around line 317,
the phrase "fast loading pages" uses an unhyphenated compound adjective; change
it to "fast-loading pages" to correctly hyphenate the compound adjective
modifying "pages."
| If you'd like to use a different example, you can replace `start-basic` above with the slug of the example you'd like to use from the list below. | ||
|
|
||
| Once you've cloned the example you want, head back to the [Routing](../guide/routing) guide to learn how to use TanStack Start! | ||
| Once you've cloned the example you want, head back to the [Routing](./guide/routing) guide to learn how to use TanStack Start! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add missing .md extensions to links.
Both links to the Routing guide are missing the .md file extension, which will break link resolution. All documentation links in this PR include the extension—these should too.
-Once you've cloned the example you want, head back to the [Routing](./guide/routing) guide to learn how to use TanStack Start!
+Once you've cloned the example you want, head back to the [Routing](./guide/routing.md) guide to learn how to use TanStack Start!-Once you've clone or deployed an example, head back to the [Routing](./guide/routing) guide to learn how to use TanStack Start!
+Once you've clone or deployed an example, head back to the [Routing](./guide/routing.md) guide to learn how to use TanStack Start!Also applies to: 63-63
🤖 Prompt for AI Agents
In docs/start/framework/solid/quick-start.md around lines 33 and 63, the two
links to the Routing guide are missing the .md extension which will break link
resolution; update both link URLs to include the .md suffix (e.g.,
./guide/routing.md) so they match the project's documentation link pattern and
resolve correctly.
|
View your CI Pipeline Execution ↗ for commit ec0c7f3
☁️ Nx Cloud last updated this comment at |
🎯 Changes
Adjusts verify-links to ensure links can resolve locally (i.e. as intended), rather than having to resolve 1 level higher
The level adjusting is then handled by the TanStack website in #563
Summary by CodeRabbit
Documentation
Documentation
Chores
✏️ Tip: You can customize this high-level summary in your review settings.