This template is a starter for integrating two ecosystems:
- Astro as the host app and SSR entrypoint.
- TanStack Start (Solid Router) as the app layer for routing and UI.
Both are connected through a Web API bridge in src/pages/[...slug].ts, which forwards all requests to the TanStack Start server handler.
Request flow:
- A request enters the Astro server.
- Astro catches it with the catch-all route in
src/pages/[...slug].ts. - The
ALL()function forwards the request tohandler.fetch(request)from TanStack Start. - TanStack Start handles routing/data and returns the response to the client.
This approach lets you combine Astro's hosting/SSR capabilities with the TanStack Start ecosystem in a single project.
src/
app/
routes/ # TanStack Start (Solid) routes
router.tsx # TanStack router setup
routeTree.gen.ts # Generated route tree
pages/
[...slug].ts # Astro -> TanStack Start Web API bridge
bun install
bun devThe app runs at http://localhost:42322 (see astro.config.ts).
bun build
bun preview- Astro 5
- TanStack Start + Solid Router
- SolidJS
- Tailwind CSS 4
- Vite
This template is a good fit when you want to:
- use Astro as the host/server framework,
- keep TanStack Start's routing and app runtime patterns,
- build a cross-ecosystem architecture with a simple Web API integration layer.