finds.dev← search

// the find

oedotme/generouted

★ 1,213 · TypeScript · MIT · updated Apr 2026

Generated file-based routes for Vite

generouted adds file-based routing on top of Vite by using glob imports to scan `src/pages` and generate a route tree at build time. It supports React Router, Solid Router, and an experimental TanStack Router integration, with optional Vite plugins that code-generate a typed `router.ts` so `useNavigate` and `<Link>` know your exact route paths at compile time. Aimed at developers who want Next.js-style page conventions in a client-only Vite app.

Type-safe navigation via generated `router.ts` is the real payoff — you get autocomplete and compile errors on bad routes without writing a single route definition by hand. The modal routing convention (`+file.tsx`) is a clever solution to a genuinely annoying problem: overlaying a modal at a real URL without losing the background page. Pathless layout groups with `()` directories map cleanly to common auth/public splits without leaking the grouping name into URLs. The interactive StackBlitz explorer lets you poke at conventions without a local install.

TanStack Router support is labelled experimental and React Location is deprecated, so two of the four listed integrations are either dead or not ready — the feature matrix is smaller than it looks. No SSR story at all: this is purely client-side routing, so if you later need server rendering you're rewriting your router wiring from scratch. The dot-separated filename convention for nested URLs without nested layouts (`posts.nested.as.url.tsx`) gets unreadable fast in a real app. At 1,200 stars and 68 forks after what looks like several years, adoption is thin enough that you'll be writing your own workarounds when you hit edge cases.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →