Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
---
name: compositions/router-query
description: >-
Integrating TanStack Router with TanStack Query: queryClient
in router context, ensureQueryData/prefetchQuery in loaders,
useSuspenseQuery in components, defaultPreloadStaleTime: 0,
setupRouterSsrQueryIntegration for SSR dehydration/hydration
and streaming, per-request QueryClient isolation.
name: compositions-router-query
description: "Integrate TanStack Router with TanStack Query for external data loading and caching. Use when adding Query to a Router project, prefetching data in loaders with ensureQueryData, configuring defaultPreloadStaleTime, setting up SSR streaming with setupRouterSsrQueryIntegration, or isolating QueryClient per request. Key APIs: useSuspenseQuery, prefetchQuery, queryClient context."
type: composition
library: tanstack-router
library_version: '1.166.2'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: lifecycle/migrate-from-react-router
description: >-
Step-by-step migration from React Router v7 to TanStack Router:
route definition conversion, Link/useNavigate API differences,
useSearchParams to validateSearch + useSearch, useParams with from,
Outlet replacement, loader conversion, code splitting differences.
name: lifecycle-migrate-from-react-router
description: "Migrate a React Router v7 application to TanStack Router with a step-by-step checklist. Use when converting route definitions, replacing Link and useNavigate calls, switching useSearchParams to validateSearch + useSearch, adapting useParams with from, converting loaders, or updating code splitting patterns."
type: lifecycle
library: tanstack-router
library_version: '1.166.2'
Expand Down
9 changes: 1 addition & 8 deletions packages/react-router/skills/react-router/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,6 @@
---
name: react-router
description: >-
React bindings for TanStack Router: RouterProvider, useRouter,
useRouterState, useMatch, useMatches, useLocation, useSearch,
useParams, useNavigate, useLoaderData, useLoaderDeps,
useRouteContext, useBlocker, useCanGoBack, Link, Navigate,
Outlet, CatchBoundary, ErrorComponent. React-specific patterns
for hooks, providers, SSR hydration, and createLink with
forwardRef.
description: "Build type-safe React applications with TanStack Router hooks, components, and providers. Use when setting up RouterProvider, navigating with Link or useNavigate, reading search params with useSearch, accessing route params with useParams, loading data with useLoaderData, or handling errors with CatchBoundary. Key APIs: useRouter, useMatch, useLocation, useBlocker, Outlet, ErrorComponent."
type: framework
library: tanstack-router
library_version: '1.166.2'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: lifecycle/migrate-from-nextjs
description: >-
Step-by-step migration from Next.js App Router to TanStack Start:
route definition conversion, API mapping, server function
conversion from Server Actions, middleware conversion, data
fetching pattern changes.
name: lifecycle-migrate-from-nextjs
description: "Migrate a Next.js App Router application to TanStack Start with a step-by-step checklist. Use when converting Next.js routes, replacing Server Actions with createServerFn, adapting middleware, switching from getServerSideProps or server components to TanStack Start data fetching patterns, or mapping Next.js APIs to Start equivalents."
type: lifecycle
library: tanstack-start
library_version: '1.166.2'
Expand Down
6 changes: 1 addition & 5 deletions packages/react-start/skills/react-start/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: react-start
description: >-
React bindings for TanStack Start: createStart, StartClient,
StartServer, React-specific imports, re-exports from
@tanstack/react-router, full project setup with React, useServerFn
hook.
description: "Build full-stack React applications with TanStack Start's React-specific bindings and setup. Use when initializing a Start project with createStart, configuring StartClient and StartServer entry points, calling server functions from components with useServerFn, or understanding how @tanstack/react-start re-exports from @tanstack/react-router."
type: framework
library: tanstack-start
library_version: '1.166.2'
Expand Down
6 changes: 1 addition & 5 deletions packages/router-core/skills/router-core/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: router-core
description: >-
Framework-agnostic core concepts for TanStack Router: route trees,
createRouter, createRoute, createRootRoute, createRootRouteWithContext,
addChildren, Register type declaration, route matching, route sorting,
file naming conventions. Entry point for all router skills.
description: "Set up and configure TanStack Router with type-safe route trees, route matching, and file-based routing conventions. Use when creating a new router, defining route hierarchies, configuring root routes, or understanding file naming conventions. Key APIs: createRouter, createRoute, createRootRoute, createRootRouteWithContext, addChildren, Register."
type: core
library: tanstack-router
library_version: '1.166.2'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
---
name: router-core/auth-and-guards
description: >-
Route protection with beforeLoad, redirect()/throw redirect(),
isRedirect helper, authenticated layout routes (_authenticated),
non-redirect auth (inline login), RBAC with roles and permissions,
auth provider integration (Auth0, Clerk, Supabase), router context
for auth state.
name: router-core-auth-and-guards
description: "Protect routes and implement authentication guards in TanStack Router using beforeLoad redirects and layout routes. Use when adding login protection, setting up role-based access control, integrating auth providers like Auth0, Clerk, or Supabase, or redirecting unauthenticated users. Key APIs: beforeLoad, redirect(), isRedirect, _authenticated layout routes, router context."
type: sub-skill
library: tanstack-router
library_version: '1.166.2'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: router-core/code-splitting
description: >-
Automatic code splitting (autoCodeSplitting), .lazy.tsx convention,
createLazyFileRoute, createLazyRoute, lazyRouteComponent, getRouteApi
for typed hooks in split files, codeSplitGroupings per-route override,
splitBehavior programmatic config, critical vs non-critical properties.
name: router-core-code-splitting
description: "Reduce bundle size with automatic and manual code splitting in TanStack Router. Use when configuring lazy-loaded routes, splitting route files for performance, or understanding critical vs non-critical route properties. Key APIs: autoCodeSplitting, createLazyFileRoute, createLazyRoute, getRouteApi, .lazy.tsx convention, codeSplitGroupings."
type: sub-skill
library: tanstack-router
library_version: '1.166.2'
Expand Down
9 changes: 2 additions & 7 deletions packages/router-core/skills/router-core/data-loading/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
---
name: router-core/data-loading
description: >-
Route loader option, loaderDeps for cache keys, staleTime/gcTime/
defaultPreloadStaleTime SWR caching, pendingComponent/pendingMs/
pendingMinMs, errorComponent/onError/onCatch, beforeLoad, router
context and createRootRouteWithContext DI pattern, router.invalidate,
Await component, deferred data loading with unawaited promises.
name: router-core-data-loading
description: "Load and cache route data with TanStack Router's built-in SWR loader system and dependency injection via router context. Use when fetching data on route load, configuring stale-while-revalidate caching, deferring slow data, showing pending UI, or injecting dependencies into loaders. Key APIs: loader, loaderDeps, staleTime, gcTime, beforeLoad, Await, router.invalidate, createRootRouteWithContext."
type: sub-skill
library: tanstack-router
library_version: '1.166.2'
Expand Down
9 changes: 2 additions & 7 deletions packages/router-core/skills/router-core/navigation/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
---
name: router-core/navigation
description: >-
Link component, useNavigate, Navigate component, router.navigate,
ToOptions/NavigateOptions/LinkOptions, from/to relative navigation,
activeOptions/activeProps, preloading (intent/viewport/render),
preloadDelay, navigation blocking (useBlocker, Block), createLink,
linkOptions helper, scroll restoration, MatchRoute.
name: router-core-navigation
description: "Navigate between routes in TanStack Router with type-safe links, programmatic navigation, preloading, and scroll restoration. Use when creating links, navigating programmatically, preloading routes on hover or viewport, blocking navigation with unsaved changes, or customizing active link styles. Key APIs: Link, useNavigate, Navigate, useBlocker, createLink, linkOptions, MatchRoute."
type: sub-skill
library: tanstack-router
library_version: '1.166.2'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: router-core/not-found-and-errors
description: >-
notFound() function, notFoundComponent, defaultNotFoundComponent,
notFoundMode (fuzzy/root), errorComponent, CatchBoundary,
CatchNotFound, isNotFound, NotFoundRoute (deprecated), route
masking (mask option, createRouteMask, unmaskOnReload).
name: router-core-not-found-and-errors
description: "Handle 404 pages, error boundaries, and route masking in TanStack Router. Use when creating custom not-found pages, handling missing resources in loaders, configuring per-route error boundaries, or masking URLs for cleaner sharing. Key APIs: notFound(), notFoundComponent, notFoundMode, errorComponent, CatchBoundary, CatchNotFound, createRouteMask."
type: sub-skill
library: tanstack-router
library_version: '1.166.2'
Expand Down
8 changes: 2 additions & 6 deletions packages/router-core/skills/router-core/path-params/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: router-core/path-params
description: >-
Dynamic path segments ($paramName), splat routes ($ / _splat),
optional params ({-$paramName}), prefix/suffix patterns ({$param}.ext),
useParams, params.parse/stringify, pathParamsAllowedCharacters,
i18n locale patterns.
name: router-core-path-params
description: "Define and consume dynamic URL segments, splat routes, and optional path parameters in TanStack Router. Use when adding dynamic route segments, creating catch-all splat routes, parsing or validating path params, or setting up i18n locale-based routing. Key APIs: $paramName, useParams, params.parse/stringify, _splat, pathParamsAllowedCharacters."
type: sub-skill
library: tanstack-router
library_version: '1.166.2'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: router-core/search-params
description: >-
validateSearch, search param validation with Zod/Valibot/ArkType adapters,
fallback(), search middlewares (retainSearchParams, stripSearchParams),
custom serialization (parseSearch, stringifySearch), search param
inheritance, loaderDeps for cache keys, reading and writing search params.
name: router-core-search-params
description: "Manage type-safe URL search params in TanStack Router with validation, serialization, and middleware. Use when validating search params with Zod/Valibot/ArkType, sharing search params across routes, customizing serialization, or using loaderDeps for cache keys. Key APIs: validateSearch, fallback(), retainSearchParams, stripSearchParams, parseSearch, stringifySearch."
type: sub-skill
library: tanstack-router
library_version: '1.166.2'
Expand Down
10 changes: 2 additions & 8 deletions packages/router-core/skills/router-core/ssr/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,6 @@
---
name: router-core/ssr
description: >-
Non-streaming and streaming SSR, RouterClient/RouterServer,
renderRouterToString/renderRouterToStream, createRequestHandler,
defaultRenderHandler/defaultStreamHandler, HeadContent/Scripts
components, head route option (meta/links/styles/scripts),
ScriptOnce, automatic loader dehydration/hydration, memory
history on server, data serialization, document head management.
name: router-core-ssr
description: "Configure server-side rendering with TanStack Router including streaming SSR, hydration, and data dehydration. Use when setting up SSR, implementing streaming rendering, managing document head content, or debugging hydration issues. Key APIs: RouterClient, RouterServer, renderRouterToString, renderRouterToStream, HeadContent, Scripts, createRequestHandler."
type: sub-skill
library: tanstack-router
library_version: '1.166.2'
Expand Down
9 changes: 2 additions & 7 deletions packages/router-core/skills/router-core/type-safety/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
---
name: router-core/type-safety
description: >-
Full type inference philosophy (never cast, never annotate inferred
values), Register module declaration, from narrowing on hooks and
Link, strict:false for shared components, getRouteApi for code-split
typed access, addChildren with object syntax for TS perf, LinkProps
and ValidateLinkOptions type utilities, as const satisfies pattern.
name: router-core-type-safety
description: "Leverage TanStack Router's fully inferred type system for end-to-end type-safe routing. Use when registering the router for global type safety, narrowing route types with from, building shared components with strict mode, or accessing typed route APIs in code-split files. Key APIs: Register, getRouteApi, addChildren, LinkProps, ValidateLinkOptions."
type: sub-skill
library: tanstack-router
library_version: '1.166.2'
Expand Down
6 changes: 1 addition & 5 deletions packages/router-plugin/skills/router-plugin/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: router-plugin
description: >-
TanStack Router bundler plugin for route generation and automatic
code splitting. Supports Vite, Webpack, Rspack, and esbuild.
Configures autoCodeSplitting, routesDirectory, target framework,
and code split groupings.
description: "Set up TanStack Router's bundler plugin for file-based route generation and automatic code splitting. Use when configuring Vite, Webpack, Rspack, or esbuild for route generation, enabling auto code splitting, or customizing route directories and split groupings. Key options: autoCodeSplitting, routesDirectory, target."
type: core
library: tanstack-router
library_version: '1.166.2'
Expand Down
9 changes: 1 addition & 8 deletions packages/solid-router/skills/solid-router/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,6 @@
---
name: solid-router
description: >-
Solid bindings for TanStack Router: RouterProvider, useRouter,
useRouterState, useMatch, useMatches, useLocation, useSearch,
useParams, useNavigate, useLoaderData, useLoaderDeps,
useRouteContext, useBlocker, useCanGoBack, Link, Navigate,
Outlet, CatchBoundary, ErrorComponent. Solid-specific patterns
with Accessor<T> returns, createSignal/createMemo/createEffect,
Show/Switch/Match/Dynamic, and @solidjs/meta for head management.
description: "Integrate TanStack Router with SolidJS using Solid-specific bindings, components, and reactive patterns. Use when setting up routing in a Solid app, working with Accessor-based hooks, handling navigation, or managing route context. Key APIs: RouterProvider, useSearch, useParams, useNavigate, useLoaderData, Link, Outlet, CatchBoundary."
type: framework
library: tanstack-router
library_version: '1.166.2'
Expand Down
6 changes: 1 addition & 5 deletions packages/solid-start/skills/solid-start/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: solid-start
description: >-
Solid bindings for TanStack Start: useServerFn hook, tanstackStart
Vite plugin, StartClient, StartServer, Solid-specific setup,
re-exports from @tanstack/start-client-core. Full project setup
with Solid.
description: "Build full-stack Solid applications with TanStack Start including server functions, SSR, and isomorphic data loading. Use when setting up a TanStack Start project with Solid, configuring the Vite plugin, or using server functions in Solid components. Key APIs: useServerFn, tanstackStart, StartClient, StartServer."
type: framework
library: tanstack-start
library_version: '1.166.2'
Expand Down
6 changes: 1 addition & 5 deletions packages/start-client-core/skills/start-core/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: start-core
description: >-
Core overview for TanStack Start: tanstackStart() Vite plugin,
getRouter() factory, root route document shell (HeadContent,
Scripts, Outlet), client/server entry points, routeTree.gen.ts,
tsconfig configuration. Entry point for all Start skills.
description: "Set up and configure a TanStack Start project from scratch. Use when configuring the tanstackStart Vite plugin, creating getRouter factory functions, building the root route document shell with HeadContent and Scripts, setting up client and server entry points, or troubleshooting routeTree.gen.ts and tsconfig. Entry point for all Start skills."
type: core
library: tanstack-start
library_version: '1.166.2'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: start-core/deployment
description: >-
Deploy to Cloudflare Workers, Netlify, Vercel, Node.js/Docker,
Bun, Railway. Selective SSR (ssr option per route), SPA mode,
static prerendering, ISR with Cache-Control headers, SEO and
head management.
name: start-core-deployment
description: "Deploy TanStack Start apps to Cloudflare Workers, Netlify, Vercel, Node.js, Docker, Bun, or Railway. Use when configuring hosting, enabling selective SSR per route, setting up static prerendering or ISR, switching to SPA mode, or managing SEO and head tags. Key APIs: createStartHandler, ssr option, Cache-Control headers."
type: sub-skill
library: tanstack-start
library_version: '1.166.2'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
---
name: start-core/execution-model
description: >-
Isomorphic-by-default principle, environment boundary functions
(createServerFn, createServerOnlyFn, createClientOnlyFn,
createIsomorphicFn), ClientOnly component, useHydrated hook,
import protection, dead code elimination, environment variable
safety (VITE_ prefix, process.env).
name: start-core-execution-model
description: "Understand and control where code runs in TanStack Start's isomorphic execution model. Use when deciding between server and client boundaries, protecting secrets from client bundles, using environment variables safely, or wrapping browser-only code. Key APIs: createServerFn, createClientOnlyFn, createIsomorphicFn, ClientOnly, useHydrated."
type: sub-skill
library: tanstack-start
library_version: '1.166.2'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
---
name: start-core/middleware
description: >-
createMiddleware, request middleware (.server only), server function
middleware (.client + .server), context passing via next({ context }),
sendContext for client-server transfer, global middleware via
createStart in src/start.ts, middleware factories, method order
enforcement, fetch override precedence.
name: start-core-middleware
description: "Build composable middleware chains for TanStack Start server functions and request handling. Use when adding auth checks, logging, context passing between middleware layers, setting up global middleware, or transferring context between client and server. Key APIs: createMiddleware, next(), sendContext, createStart."
type: sub-skill
library: tanstack-start
library_version: '1.166.2'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
---
name: start-core/server-functions
description: >-
createServerFn (GET/POST), inputValidator (Zod or function),
useServerFn hook, server context utilities (getRequest,
getRequestHeader, setResponseHeader, setResponseStatus), error
handling (throw errors, redirect, notFound), streaming, FormData
handling, file organization (.functions.ts, .server.ts).
name: start-core-server-functions
description: "Create type-safe server RPCs in TanStack Start that run exclusively on the server but are callable from anywhere. Use when fetching data from a database, calling external APIs with secrets, handling form submissions, validating input, or streaming responses. Key APIs: createServerFn, useServerFn, inputValidator, getRequest, redirect, notFound."
type: sub-skill
library: tanstack-start
library_version: '1.166.2'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,6 @@
---
name: start-core/server-routes
description: >-
Server-side API endpoints using the server property on
createFileRoute, HTTP method handlers (GET, POST, PUT, DELETE),
createHandlers for per-handler middleware, handler context
(request, params, context), request body parsing, response
helpers, file naming for API routes.
name: start-core-server-routes
description: "Define server-side API endpoints in TanStack Start using file-based routing conventions. Use when building REST APIs, handling webhooks, processing raw HTTP requests, or adding per-endpoint middleware. Key APIs: createFileRoute server property, createHandlers, HTTP method handlers (GET, POST, PUT, DELETE)."
type: sub-skill
library: tanstack-start
library_version: '1.166.2'
Expand Down
6 changes: 1 addition & 5 deletions packages/start-server-core/skills/start-server-core/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,6 @@
---
name: start-server-core
description: >-
Server-side runtime for TanStack Start: createStartHandler,
request/response utilities (getRequest, setResponseHeader,
setCookie, getCookie, useSession), three-phase request handling,
AsyncLocalStorage context.
description: "Handle server-side requests in TanStack Start including request handling, cookies, and sessions. Use when setting up createStartHandler, reading requests with getRequest, managing cookies with setCookie and getCookie, implementing sessions with useSession, setting response headers, or understanding the three-phase request lifecycle and AsyncLocalStorage context."
type: core
library: tanstack-start
library_version: '1.166.2'
Expand Down
Loading