React Router V7 OpenClaw Skill

React Router v7 best practices for data-driven routing. Use when implementing routes, loaders, actions, Form components, fetchers, navigation guards, protect...

v1.1.0 Recently Updated Updated 4 days ago

Installation

clawhub install react-router-v7

Requires npm i -g clawhub

35

Downloads

0

Stars

0

current installs

0 all-time

1

Versions

React Router v7 Best Practices

Quick Reference

Router Setup (Data Mode):

import { createBrowserRouter, RouterProvider } from "react-router";

const router = createBrowserRouter([
  {
    path: "/",
    Component: Root,
    ErrorBoundary: RootErrorBoundary,
    loader: rootLoader,
    children: [
      { index: true, Component: Home },
      { path: "products/:productId", Component: Product, loader: productLoader },
    ],
  },
]);

ReactDOM.createRoot(root).render(<RouterProvider router={router} />);

Framework Mode (Vite plugin):

// routes.ts
import { index, route } from "@react-router/dev/routes";

export default [
  index("./home.tsx"),
  route("products/:pid", "./product.tsx"),
];

Route Configuration

Nested Routes with Outlets

createBrowserRouter([
  {
    path: "/dashboard",
    Component: Dashboard,
    children: [
      { index: true, Component: DashboardHome },
      { path: "settings", Component: Settings },
    ],
  },
]);

function Dashboard() {
  return (
    <div>
      <h1>Dashboard</h1>
      <Outlet /> {/* Renders child routes */}
    </div>
  );
}

Dynamic Segments and Splats

{ path: "teams/:teamId" }           // params.teamId
{ path: ":lang?/categories" }       // Optional segment
{ path: "files/*" }                 // Splat: params["*"]

Key Decision Points

Form vs Fetcher

Use <Form>: Creating/deleting with URL change, adding to history
Use useFetcher: Inline updates, list operations, popovers - no URL change

Loader vs useEffect

Use loader: Data before render, server-side fetch, automatic revalidation
Use useEffect: Client-only data, user-interaction dependent, subscriptions

Additional Documentation

Mode Comparison

Feature Framework Mode Data Mode Declarative Mode
Setup Vite plugin createBrowserRouter <BrowserRouter>
Type Safety Auto-generated types Manual Manual
SSR Support Built-in Manual Limited
Use Case Full-stack apps SPAs with control Simple/legacy

Statistics

Downloads 35
Stars 0
Current installs 0
All-time installs 0
Versions 1
Comments 0
Created Mar 27, 2026
Updated Mar 27, 2026

Latest Changes

v1.1.0 · Mar 27, 2026

- Added comprehensive best practices and quick reference for React Router v7 usage. - Expanded documentation on route setup, nested routes, dynamic segments, and splats. - Clarified when to use Forms vs. fetchers, and loader vs. useEffect for data handling. - Included a mode comparison table covering Framework, Data, and Declarative modes. - Linked to additional references for data loading, mutations, navigation, and advanced features.

Quick Install

clawhub install react-router-v7
EU Made in Europe

Chat with 100+ AI Models in one App.

Use Claude, ChatGPT, Gemini alongside with EU-Hosted Models like Deepseek, GLM-5, Kimi K2.5 and many more.