@smoothie-framework/router-tanstack
v0.0.3
Published
Smoothie router bridge over TanStack router core
Downloads
32
Maintainers
Readme
@smoothie-framework/router-tanstack
Thin TanStack-backed routing bridge for Smoothie web applications.
This package is the first FW34 routing layer candidate. It exists to keep
routing out of @smoothie-framework/ui while giving Smoothie web apps a package-
backed navigation seam.
Current scope:
- package-owned TanStack router integration surface
- route-aware link/navigation helpers over
@smoothie-framework/ui - outlet rendering and current route match/loader-data bindings for routed web apps
Current exports include:
- TanStack router-core re-exports
RouterLinkandNavLinkRouterOutletcreateRouterStateBindingcreateCurrentRouteMatchBindingcreateCurrentRouteLoaderDataBinding
Example:
import {
RouterLink,
RouterOutlet,
createRouter,
createRootRoute,
createRoute,
} from '@smoothie-framework/router-tanstack';
import { Row, Stack, Text } from '@smoothie-framework/ui';
const rootRoute = createRootRoute();
const homeRoute = createRoute({
getParentRoute: () => rootRoute,
path: '/',
component: () => Text({ children: 'Home' }),
});
const router = createRouter({
routeTree: rootRoute.addChildren([homeRoute]),
});
const shell = Stack({
children: [
Row({
children: [
RouterLink({ router, to: { to: '/' }, children: 'Home' }),
],
}),
RouterOutlet({ router, fallback: Text({ children: 'No route selected' }) }),
],
});Out of scope:
- Smoothie-owned router core
- SSR and server functions
- moving router semantics into the core UI toolkit packages
