GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Blog
  • YouTubeThe official TanStack channel.
  • WorkshopsLive sessions from the maintainers.
  • DiscordReal-time community support.
  • GitHubSource, issues, discussions, and releases.
  • ShowcaseProjects selected by the TanStack team.
  • Community projects
  • TanChatNEW
  • StatsNPM and ecosystem usage data.
  • Merch
  • Support OverviewFind the right support path.
  • PartnersCompanies supporting TanStack.
  • EthosHow we approach open source.
  • TenetsThe values that shape TanStack libraries.

This view

  • Original page
  • New address

GeezerVison is showing tanstack.com — TanStack Start | Full-stack React and Solid Framework

TanStack

Start

A full-stack framework for React and Solid.

Build with type-safe routing, server-side rendering, streaming, and server functions, powered by TanStack Router.

Docs
route execution map

server

  1. 1beforeLoad
  2. 2loader
  3. 3component
  4. 4stream HTML

browser

  1. 1hydrate HTML
  2. 2client navigation

Full SSR

Data and markup arrive ready to hydrate.

432.9Mtotal downloads11,891,439weekly downloads15,309GitHub stars

Router at the core

The framework does not replace the application model.

Routes, params, search schemas, loaders, links, pending states, and boundaries stay TanStack Router. Start adds the server and build layers around that same tree.

Start server layer

SSR · streaming · server functions · routes · middleware

TanStack Router

route tree · URL state · loaders · links · boundaries

Your application

components · data clients · product behavior

Explicit boundaries

Server work is visible in the code that calls it.

Use server functions for type-safe app calls, server routes for outside callers, and composable middleware for authentication, context, logging, and policy.

server boundary

Typed work called from the app

const getProject = createServerFn({ method: 'GET' })
  .validator(projectSchema)
  .handler(({ data }) => db.projects.find(data.id))
  1. component or loader
  2. validated request
  3. server-only handler
  4. typed result

Portable application model

Keep the routes. Change the output.

Start supports Vite and Rsbuild and is designed for different hosting providers and runtimes. Deployment configuration changes; route authoring and server boundaries do not.

deployment output

selected target

Cloudflare

output
Worker runtime
deploy
wrangler deploy
createFileRoute()
createServerFn()
middleware()
route loaders

The authoring surface stays the same.

Partners

Gold
LovableLovable
RailwayRailway
CloudflareCloudflare
RenderRender
CodeRabbitCodeRabbit
Silver
ClerkClerk
SerpApiSerpApi
WorkOS
OpenRouterOpenRouter
Bronze
PrismaPrisma
Scarf
OSS Sponsors

Sponsors get special perks like private discord channels, priority issue requests, and direct support!

Become a Sponsor
View Previous Partners
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.