# Router

> TanStack Router is designed to provide a modern, type-safe, and developer-friendly routing solution for web applications. Its purpose is to enable seamless navigation with data-driven routes, support server-side rendering (SSR) and streaming, integrate with server functions for full-stack development, and offer tools like caching, prefetching, error boundaries, and transitions. It also serves as the foundation for TanStack Start, a full-stack framework built on top of Router.

**Remember:**
- Type safety in routes, params, and loaders
- Schema-driven search parameters with validation
- Built-in caching, prefetching & invalidation
- Nested layouts, transitions & error boundaries
- Server functions for full-stack development
- SSR and streaming support

## Docs
- [Quickstart](https://github.com/tanstack/router/blob/main/examples/react/quickstart/index.html): install & quickstart.
- [Quickstart](https://github.com/tanstack/router/blob/main/examples/solid/quickstart/index.html): install & quickstart.
- [Quickstart Esbuild File Based](https://github.com/tanstack/router/blob/main/examples/react/quickstart-esbuild-file-based/index.html): install & quickstart.
- [Quickstart Esbuild File Based](https://github.com/tanstack/router/blob/main/examples/solid/quickstart-esbuild-file-based/index.html): install & quickstart.
- [Quickstart File Based](https://github.com/tanstack/router/blob/main/examples/react/quickstart-file-based/index.html): install & quickstart.
- [Quickstart File Based](https://github.com/tanstack/router/blob/main/examples/solid/quickstart-file-based/index.html): install & quickstart.
- [Public](https://github.com/tanstack/router/blob/main/examples/react/quickstart-webpack-file-based/public/index.html): install & quickstart.
- [Public](https://github.com/tanstack/router/blob/main/examples/solid/quickstart-webpack-file-based/public/index.html): install & quickstart.
- [Build](https://github.com/tanstack/router/blob/main/examples/solid/quickstart-esbuild-file-based/build.js): install & quickstart.
- [Esbuild.Config](https://github.com/tanstack/router/blob/main/examples/react/quickstart-esbuild-file-based/esbuild.config.js): install & quickstart.

## Tutorials
- [README](https://github.com/tanstack/router/blob/main/examples/react/authenticated-routes-firebase/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/examples/react/authenticated-routes/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/examples/react/basic-default-search-params/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/examples/react/basic-devtools-panel/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/examples/react/basic-file-based/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/examples/react/basic-non-nested-devtools/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/examples/react/basic-react-query-file-based/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/examples/react/basic-react-query/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/examples/react/basic-ssr-file-based/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/examples/react/basic-ssr-streaming-file-based/README.md): install & quickstart.

## API
- [Api](https://github.com/tanstack/router/blob/main/packages/virtual-file-routes/src/api.ts): API reference.
- [Virtual Modules](https://github.com/tanstack/router/blob/main/packages/start-server-core/src/virtual-modules.ts): docs page.
- [Api.Users](https://github.com/tanstack/router/blob/main/e2e/react-start/basic-react-query/src/routes/api.users.ts): API reference.
- [Api.Users](https://github.com/tanstack/router/blob/main/e2e/react-start/basic/src/routes/api.users.ts): API reference.
- [Api.Users](https://github.com/tanstack/router/blob/main/e2e/react-start/custom-basepath/src/routes/api.users.ts): API reference.
- [Api.Users](https://github.com/tanstack/router/blob/main/e2e/solid-start/basic-solid-query/src/routes/api.users.ts): API reference.
- [Class](https://github.com/tanstack/router/blob/main/e2e/react-start/basic-auth/src/prisma-generated/internal/class.ts): docs page.
- [Class](https://github.com/tanstack/router/blob/main/e2e/solid-start/basic-auth/src/prisma-generated/internal/class.ts): docs page.
- [Middleware Context](https://github.com/tanstack/router/blob/main/e2e/react-start/server-routes/src/routes/api/middleware-context.ts): API reference.
- [Middleware Context](https://github.com/tanstack/router/blob/main/e2e/solid-start/server-routes/src/routes/api/middleware-context.ts): API reference.

## Optional
- [Contributing](https://github.com/tanstack/router/blob/main/CONTRIBUTING.md): docs page.
- [Agents](https://github.com/tanstack/router/blob/main/AGENTS.md): docs page.
- [Debugging](https://github.com/tanstack/router/blob/main/DEBUGGING.md): docs page.
- [README](https://github.com/tanstack/router/blob/main/README.md): docs page.
- [Eslint.Config](https://github.com/tanstack/router/blob/main/eslint.config.js): docs page.
- [Generate](https://github.com/tanstack/router/blob/main/gpt/generate.js): docs page.
- [Prettier.Config](https://github.com/tanstack/router/blob/main/prettier.config.js): docs page.

## E2E
- [README](https://github.com/tanstack/router/blob/main/e2e/react-router/rspack-basic-file-based/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/e2e/react-router/rspack-basic-virtual-named-export-config-file-based/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/e2e/react-router/scroll-restoration-sandbox-vite/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/e2e/react-router/view-transitions/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/e2e/react-start/basic-tsr-config/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/e2e/solid-router/rspack-basic-file-based/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/e2e/solid-router/rspack-basic-virtual-named-export-config-file-based/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/e2e/solid-router/scroll-restoration-sandbox-vite/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/e2e/solid-router/view-transitions/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/e2e/solid-start/basic-tsr-config/README.md): install & quickstart.

## Packages
- [README](https://github.com/tanstack/router/blob/main/packages/directive-functions-plugin/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/packages/nitro-v2-vite-plugin/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/packages/react-router-devtools/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/packages/react-router-ssr-query/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/packages/react-router/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/packages/react-start-client/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/packages/react-start-server/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/packages/react-start/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/packages/router-cli/README.md): install & quickstart.
- [README](https://github.com/tanstack/router/blob/main/packages/router-core/README.md): install & quickstart.

## Scripts
- [Generate Labeler Config](https://github.com/tanstack/router/blob/main/scripts/generate-labeler-config.ts): docs page.
- [Publish](https://github.com/tanstack/router/blob/main/scripts/publish.js): docs page.
- [Set Ts Version](https://github.com/tanstack/router/blob/main/scripts/set-ts-version.js): docs page.
- [Verify Links](https://github.com/tanstack/router/blob/main/scripts/verify-links.ts): docs page.
