What problem does it solve? Setting up Clerk authentication in React Router v7/v8 involves a middleware-plus-loader pipeline that differs sharply from other frameworks, and misconfigurations cause cryptic SSR errors like "useNavigate may be used only in the context of a Router". This Skill provides the correct patterns for rootAuthLoader, clerkMiddleware, getAuth, and protected routes so auth works on the first try. ## Core Features & Use Cases - Root Setup: Configures clerkMiddleware, rootAuthLoader, and ClerkProvider in root.tsx, including the required vite.config.ts ssr.noExternal workaround for React Router v8. - Server-Side Auth: Uses getAuth in loaders and actions to gate routes, read userId/orgId, and scope data fetches to the active organization. - Client Components & Orgs: Covers useAuth/useUser hooks and OrganizationSwitcher for org switching flows. - Use Case: You are building a React Router v8 dashboard and need /dashboard to redirect unauthenticated users to /sign-in while loading org-scoped data. The Skill supplies the exact loader code with getAuth, redirect logic, and the v8 Vite fix. ## Quick Start Ask the assistant to set up Clerk authentication in your React Router app with rootAuthLoader, clerkMiddleware, and a protected dashboard route.