CodeVetter · Repo Unpack · System map
TanStack/router
The repository publishes routing and full-stack framework packages rather than one deployable application. RouterCore owns shared routing, while framework bindings provide rendering and store integration. Start introduces HTTP request handling and request-local context on top of that core. Workspace scripts and CI coordinate builds, correctness checks, performance scenarios, and releases.
- React, Solid, and Vue expose createRouter factories whose Router classes extend RouterCore and pass getStoreFactory to its constructor.
- RouterCore.load dispatches to loadServerRoute on the server and otherwise updates the latest location before calling loadClientRoute.
- React Router uses nonreactive core stores on the server and React Store atoms with batching on the client.
- createStartHandler returns a RequestHandler that distinguishes server-function requests using SERVER_FN_BASE and supplies separate RPC and router terminals.
- Start stores request context in AsyncLocalStorage, while session helpers delegate to h3 against the current request event; these inspected layers expose request/session state rather than a database implementation.
- Router core publishes ESM and CommonJS entrypoints plus separate SSR client/server and conditional isServer exports; Start server core publishes ESM entrypoints and requires Node >=22.12.0.
- The pnpm@11.21.0 workspace includes packages, benchmarks, framework examples, and framework e2e projects; root test:pr uses nx affected and test:ci uses nx run-many across lint, unit, e2e, types, build checks, and builds.
- PR CI runs affected checks and publishes package previews; release CI builds packages before Changesets versioning/publishing and selects prerelease, maintenance, or latest behavior from branch names.