Full-stack framework

TanStackStart

RC

The full-stack framework for Router-first apps.

Start takes TanStack Router's typed route tree, URL state, loaders, and prefetching, then adds the server pieces: full-document SSR, streaming, server functions, server routes, and build output for the runtime you choose.

Total DownloadsWeekly DownloadsGitHub Stars

The fastest-growing full-stack framework in the JavaScript ecosystem.

Read the docs

Built on Router

Routes, search, loaders, links

Client-authored, server-powered

SSR, streaming, server functions

Portable output

Cloudflare, Railway, Netlify ready

Router + server

Start begins where Router leaves off.

The route tree owns the application contract. Start adds execution, server functions, server routes, and build output around it without replacing that contract.

routes/_app.projects.$id.tsx

route

Types flow from the route file.

Path params, search schemas, route context, loader data, links, and navigate calls all stay tied to the generated route map.

Result: a Router app first; SSR, streaming, APIs, middleware, and deployment added where the app needs them.

Application builder

Turn an app idea into a Start-ready implementation plan.

Pick a starting shape, describe the product, and let the builder assemble the TanStack libraries and partner integrations that fit the job. The output is a practical agent prompt, not a generic starter checklist.

Why Start

Most of the framework is the route tree.

If all you need is a SPA router, use Router. Start is for the moment the same app also needs SSR, streaming, server-only work, server routes, middleware, and deployable server output.

Built on TanStack Router

Routes, params, search schemas, loaders, pending states, links, and navigation all come from TanStack Router. Start adds the server and deployment layer around that app model.

URL state is first-class

Search params are parsed, validated, inherited, and written through Router APIs, so filters, tabs, pagination, and deep app state can be shared instead of synchronized by hand.

Server work stays explicit

createServerFn gives loaders, components, hooks, and handlers access to server-only work with validation, serializable boundaries, and same-origin RPC semantics.

SSR keeps the app model

Start can render the full document, stream useful UI, or opt routes into SPA/selective SSR modes while preserving the interactive client-side Router experience.

RC status

Feature-complete, still listening.

The RC API is considered stable and preparing for 1.0. For production apps, lock dependencies to a specific version and keep up with the final feedback, docs polish, and last-mile fixes.

Production RC checklist

Pin the RC Lock Start and Router packages instead of floating on broad ranges.
Track release notes Treat version bumps as planned work and re-run the routes, loaders, and server functions that matter.
Report sharp edges Small reproductions are still valuable while the final docs polish and last-mile fixes land.

Open source ecosystem

Partners and GitHub sponsors stay close to the product story.

Start is built in public, supported by maintainers, partner integrations, and sponsors who help keep the work moving.

GitHub Sponsors

Wow, you've come a long way!
Only one thing left to do...