A skill covering all the API documentation for React Router v8. It handles the three modes Declarative / Data / Framework, butstart/ the setup procedures under it are written mainly for Framework Mode.
Depending on the user's task, read the appropriate README.md and follow it through to the individual files.
Directory structure
skills/react-router/
SKILL.md
references/
start/
README.md
actions.md
data-loading.md
deploying.md
installation.md
modes.md
navigating.md
pending-ui.md
rendering.md
route-module.md
routing.md
testing.md
conventions/
README.md
client-modules.md
entry-client-tsx.md
entry-server-tsx.md
react-router-config-ts.md
root-tsx.md
routes-ts.md
server-modules.md
routers/
README.md
HydratedRouter.md
ServerRouter.md
hooks/
README.md
useActionData.md
useAsyncError.md
useAsyncValue.md
useBeforeUnload.md
useBlocker.md
useFetcher.md
useFetchers.md
useFormAction.md
useHref.md
useInRouterContext.md
useLinkClickHandler.md
useLoaderData.md
useLocation.md
useMatch.md
useMatches.md
useNavigate.md
useNavigation.md
useNavigationType.md
useOutlet.md
useOutletContext.md
useParams.md
usePrompt.md
useResolvedPath.md
useRevalidator.md
useRouteError.md
useRouteLoaderData.md
useRouterState.md
useRoutes.md
useSearchParams.md
useSubmit.md
useViewTransitionState.md
components/
README.md
Await.md
Form.md
Link.md
Links.md
Meta.md
Navigate.md
NavLink.md
Outlet.md
PrefetchPageLinks.md
Route.md
Routes.md
ScrollRestoration.md
Scripts.md
utils/
README.md
createContext.md
createCookie.md
createCookieSessionStorage.md
createMemorySessionStorage.md
createPath.md
createRoutesFromElements.md
createRoutesStub.md
createSearchParams.md
data.md
generatePath.md
href.md
IsCookieFunction.md
IsSessionFunction.md
isCookie.md
isRouteErrorResponse.md
isSession.md
matchPath.md
matchRoutes.md
parsePath.md
redirect.md
redirectDocument.md
renderMatches.md
replace.md
resolvePath.md
RouterContextProvider.md
sessions-and-cookies.md
how-to/
README.md
accessibility.md
client-data.md
data-strategy.md
error-boundary.md
error-reporting.md
fetchers.md
file-route-conventions.md
file-uploads.md
form-validation.md
headers.md
instrumentation.md
middleware.md
navigation-blocking.md
pre-rendering.md
presets.md
react-server-components.md
resource-routes.md
route-module-type-safety.md
security.md
server-bundles.md
spa.md
status.md
suspense.md
using-handle.md
view-transitions.md
explanation/
README.md
backend-for-frontend.md
code-splitting.md
concurrency.md
form-vs-fetcher.md
hot-module-replacement.md
index-query-param.md
lazy-route-discovery.md
progressive-enhancement.md
race-conditions.md
react-transitions.md
sessions-and-cookies.md
state-management.md
styling.md
type-safety.md
cli/
README.md
adapter.md
dev.md
serve.md
samples/
README.md
basic-routing.md
data-loading.md
error-boundary.md
form-action.md
form-validation.md
middleware-auth.md
navigation-blocking.md
pending-ui.md
pre-rendering.md
search-params.md
session-auth.md
scripts/
README.md
build.md
cli.md
install.md
typegen.md
upgrade.md
Exploration procedure
Look up the category from the task, and identify the target page in the category's README.md:
- Find the category corresponding to the task in the mapping table below
- that category's
references/{category}/README.mdto identify the target page - Read the
.mdof the relevant page to check the details
Task → Category Mapping
| Task | Category | Reference README |
|---|---|---|
| Project setup and installation | start | references/start/README.md |
| Choosing Declarative / Data / Framework mode | start | references/start/README.md |
| Routing configuration, data loading, actions, deployment | start | references/start/README.md |
| Route modules, rendering strategies, testing | start | references/start/README.md |
| Configuration of root.tsx / routes.ts / react-router.config.ts | conventions | references/conventions/README.md |
| entry.client.tsx / entry.server.tsx / client and server module separation | conventions | references/conventions/README.md |
| How to use HydratedRouter / ServerRouter | routers | references/routers/README.md |
| Hooks such as useLoaderData / useActionData / useFetcher | hooks | references/hooks/README.md |
| useNavigate / useNavigation / useParams / useSearchParams etc. | hooks | references/hooks/README.md |
| useBlocker / useRevalidator / useRouteError etc. | hooks | references/hooks/README.md |
| Hooks for Declarative and Data Mode such as useRoutes / useOutlet / useResolvedPath | hooks | references/hooks/README.md |
| Components such as Form / Link / NavLink / Outlet / Await | components | references/components/README.md |
| Links / Meta / Scripts / ScrollRestoration / PrefetchPageLinks | components | references/components/README.md |
| Route / Routes (route definition components for Declarative and Data Mode) | components | references/components/README.md |
| redirect / data / createCookie / session management API | utils | references/utils/README.md |
| generatePath / href / isRouteErrorResponse / createRoutesStub | utils | references/utils/README.md |
| Path operations such as matchPath / matchRoutes / resolvePath / createPath / parsePath | utils | references/utils/README.md |
| createRoutesFromElements / createSearchParams / RouterContextProvider | utils | references/utils/README.md |
| Middleware, file uploads, SPA mode, prerendering | how-to | references/how-to/README.md |
| Form validation, error boundaries, security | how-to | references/how-to/README.md |
| RSC, server bundles, resource routes, type safety | how-to | references/how-to/README.md |
| data strategy (customizing loader/action execution control) | how-to | references/how-to/README.md |
| Concepts such as code splitting, state management, BFF, progressive enhancement | explanation | references/explanation/README.md |
| Mechanisms of HMR, race conditions, concurrency, type safety | explanation | references/explanation/README.md |
| Conceptual mechanisms of sessions and cookies (see utils for the API) | explanation | references/explanation/README.md |
| Styling policy (Vite-based) | explanation | references/explanation/README.md |
| CLI commands such as dev / serve / adapter | cli | references/cli/README.md |
| I want to check typical usage and implementation patterns | samples | samples/README.md |
| I want to know the commands for installation, build, and type generation | scripts | scripts/README.md |
| Upgrade procedure from v7 to v8 | scripts | scripts/README.md |