Everything you need to ship fast
A thin, typed starter. No extra server, no hidden state, just the pieces that stay useful after the demo.
Type-safe routing
File-based routes with search validation and intent preload. No string URLs, no mismatched params.
Query caching
Zod-validated fetch with staleTime, keepPreviousData and no useEffect. Data stays on screen while it refreshes.
Tables and lists
Headless Table for sorting and filtering, Virtual for windowed lists. Fixed heights, stable keys, no shift.
Charts that scale
Declarative line, area and dot marks with shared scales and portaled tooltips. Theme-aware from the start.
Base UI + Tailwind v4
Accessible dialog, combobox and select via Base UI. Tokens live in @theme, pink in both light and dark.
Shipped to check itself
oxlint, react-doctor, Fallow and Playwright axe run on every build. Prerender fails if a route breaks.
Quick start in 30 seconds
Clone, install and ship. TanStack Start SSG on Cloudflare Pages — zero server, instant CDN.
git clone https://github.com/Double77x/fastorbit-vite.git
cd fastorbit-vite
pnpm install
pnpm dev- 1Clone the starter — includes Router, Query, Charts, Table, Virtual + Base UI.
- 2pnpm dev at :8080, pnpm build prerenders to
dist/for Pages. - 3Deploy
dist/to Cloudflare Pages — edge CDN, no server.
Needs Node 20+, pnpm. Open-Meteo needs no key — just `fetchWeather` via useWeather.
Full stack architecture
Every piece is type-safe, theme-aware and SSG-ready. Copy this pattern for your own TanStack + Cloudflare starter.
TanStack Router
Type-safe file-based routing with search validation, preload intent and scroll restoration.
TanStack Start
SSG prerender (crawlLinks) to static HTML for Cloudflare Pages — CDN first paint, hydrate after.
TanStack Query
Server state with Zod-validated fetch, 5m stale, keepPreviousData — no useEffect fetch.
TanStack Table
Headless sorting via createColumnHelper + getSortedRowModel — v9 legacy bridge, no getCanSort crash.
TanStack Virtual
Windowed combobox for 20 locations (scales to 150+). Fixed row heights, stable keys, no CLS.
TanStack Charts
Declarative lineY + dot, catppuccin pink/mauve gradients, portaled tooltip — theme-aware.
TanStack Hotkeys
Declarative hotkeys (Mod+K, /, Esc) for command palette — scoped, no global listeners.
Zod
Runtime schema validation for search, weather API and env — parse, don’t validate.
Base UI + shadcn
Accessible primitives (Dialog, Combobox, Select) rewired from Radix — no @radix-ui deps.
Tailwind v4
@tailwindcss/vite, @theme tokens, semantic --primary pink (#ea76cb / #f5c2e7) + glow.
Vite + Wrangler
Vite 8 + oxc minify, visualizer, Cloudflare Pages output dist/ — pnpm dev :8080, build SSG.
Security & a11y
CSP in _headers (open-meteo allow), _redirects fallback, axe-core Playwright, oxlint + fallow.
Architecture notes
- No
useEffectfor data —useWeatheris pureuseQuerywith Zod. - Search param
?location=londonis TanStack Router validateSearch — shareable, back-button correct, wired toCTRL+K. - Select virtualization via
@tanstack/react-virtualinside Base UI Combobox — not Select (see ColumnPicker threshold 150). - Skeletons use
keepPreviousData+ fixedmin-h-80so switching locations doesn’t shift layout.
Powered by TanStack
A live showcase of our architectural stack — TanStack Query for server state, TanStack Charts for visualization, TanStack Table for data grids, and TanStack Virtual for performant lists. All client-side, SSG-ready on Cloudflare Pages.
Frequently asked questions
Common questions about Fast Orbit. For data formatting details, see the documentation.

