FeaturesEdit this page.md

Comparison

This table compares @lazarv/react-server against other popular React frameworks and routing solutions. The comparison covers full-stack features, architecture, routing, type safety, search params, scroll restoration, and developer experience.

This comparison summarizes the feature set described in the documentation. It focuses on first-class, built-in support rather than custom userland solutions. Some rows describe core architecture, others cover convenience or router ergonomics, so the table should be read as a map of tradeoffs, not a single score.

This comparison is maintained by the @lazarv/react-server team. If you find an inaccuracy, please open an issue — we want this to be fair and factual.

Legend:

@lazarv/react-serverNext.jsTanStack StartReact RouterWaku
React Server Components🛑🟡
Server Functions (actions)🟡
SSR
Streaming SSR
API Routes
API / Route Middleware🟡
Server Function Middleware🟡🛑🛑🛑
Static Site Generation🟡🟡
Partial Pre-rendering (PPR)🛑🛑🛑
Response Caching (TTL)🛑🛑🛑
Redirects (server)🟡
Rewrites (server)🛑🛑🛑
Reload / Invalidation🛑
@lazarv/react-serverNext.jsTanStack StartReact RouterWaku
Open Runtime (no vendor lock-in)🟡
optimized for Vercel
Vite-based🛑
Multiple Deploy Targets🟡
Micro-frontend / Remote Components🔶🛑🛑🛑
MCP Server Integration🛑🛑🛑🛑
Worker / Multi-threaded Rendering🛑🛑🛑🛑
Cluster Mode🛑🛑🛑🛑
Adapter-based Deployment🟡
@lazarv/react-serverNext.jsTanStack RouterReact RouterWaku
Nested / Layout Routes
Code-based Routes🛑🛑
File-based Routes
Virtual / Programmatic Routes🛑🛑
Ranked Route Matching🛑
Suspense Route Transitions🟡
Suspense Route Elements🟡
Error Boundary Elements
Loading / Pending Elements🟡
Client-only Routes🛑🛑
Parallel Routes / Outlets🛑🛑🟡
Route Prefetching🟡
Automatic Prefetching🛑
Active Link Customization🛑
Navigation Guards / Blocker🛑🟡🛑
<Form> Component🛑🛑
Deferred / Streaming Primitives🟡
@lazarv/react-serverNext.jsTanStack RouterReact RouterWaku
Typesafe Route Paths🟡🟡🛑
Typesafe Path Params🛑🟡
Typesafe Navigation🟡🟡🛑
Typesafe Search Params🛑🛑🛑
Path Param Validation🛑🛑🛑
Path Param Coercion / Parsing🛑🛑🛑
Typed Link Components🛑🛑🛑
Typed Hooks (useParams, useSearchParams)🛑🟡🛑
Auto-generated Route Types (file-router)🟡🛑🛑
Branded Outlet Types🛑🛑🛑🛑
Multi-library Schema Support (Zod, ArkType, Valibot)🛑🟡🛑🛑
Lightweight Parse Functions (no schema library)🛑🛑🛑🛑
@lazarv/react-serverNext.jsTanStack RouterReact RouterWaku
Basic Search Params🟡
Search Param Hooks🛑
Typed Search Params🛑🛑🛑
Search Param Schema Validation🛑🛑🛑
<Link> / useNavigate Search API (object, not string)🟡🟡🛑
Functional Search Updaters (prev => next)🛑🛑🛑
Search Param Transforms (encode/decode boundary)🛑🛑🛑
Route-scoped Search Transforms🛑🛑🛑🛑
Custom Search Parsing/Serialization🛑🔶🛑
@lazarv/react-serverNext.jsTanStack RouterReact RouterWaku
Window Scroll Restoration🟡🟡
Element / Container Scroll Restoration🛑🛑🛑
Async Content Scroll Restoration🛑🛑🛑
Per-route Scroll Customization🛑🟡🛑🛑
Zero-flash Restoration (pre-hydration script)🛑🛑🛑🛑
prefers-reduced-motion Aware🛑🛑🛑🛑
Hash / Anchor Scrolling🛑
Config-level Enable (zero code)🛑🛑🛑🛑
Query-only Changes Preserve Scroll🛑🟡🛑🛑
@lazarv/react-serverNext.jsTanStack RouterReact RouterWaku
Typed Resource Descriptors🛑🛑🛑🛑
Schema-validated Resource Keys🛑🟡🛑🛑
Suspense-integrated .use() Hook🛑🟡🛑
Resource Invalidation (per-key)🟡🛑🛑
Resource Collections🛑🛑🛑🛑
Route-Resource Binding (prefetch)🛑🛑
Router Loaders (data fetching)
RSC + resources
🟡🟡
SWR / Stale-While-Revalidate Caching
"use cache"
🛑🛑
Server & Client Loaders🟡🛑
@lazarv/react-serverNext.jsTanStack RouterReact RouterWaku
Zero-config File Router🟡🟡
MDX Pages🔶🛑🛑🛑
Virtual Routes Module🛑🟡🟡🛑
Route-scoped Loading / Error / Fallback Files🛑🛑🛑
Route Devtools🛑🛑🟡🛑
Route Masking🛑🛑🛑🛑
Route-level Typed Dependencies
Typesafe resources
🛑
Typesafe route context + loaders
🛑🛑
Route Mount / Unmount Events🛑🛑🛑🛑

@lazarv/react-server is a full React Server Components runtime — not just a router. The routing system is deeply integrated with RSC streaming, server functions, and the Vite build pipeline. This means features like typed routes, client-only routes, and server-side validation work end-to-end without glue code.

Key architectural differences