Best React Router v7 SaaS Starter Kits 2026
React Router v7 changed the game. What was a client-side routing library became a full-stack framework with server-side rendering, streaming, and a file-based routing convention that competes directly with Next.js. For SaaS developers, this opened a new category: starter kits that use React Router v7 as the foundation rather than Next.js App Router.
If you've been building SaaS on Remix (React Router's predecessor), v7 is a migration that makes everything better — tighter TypeScript types, better streaming, and a more stable API surface. If you're coming from Next.js, React Router v7 offers a compelling alternative with fewer breaking changes between major versions.
Here are the best starter kits built specifically for React Router v7 in 2026.
Quick Comparison
| Starter | Price | Auth | Billing | DB | Stack |
|---|---|---|---|---|---|
| MakerKit RR7 | $299 | Supabase Auth | Stripe + Lemon | Supabase | RR7 + Supabase |
| RSK (michaelshimeles) | Free | Clerk | Polar.sh | Convex | RR7 + Convex |
| SaasRock | $299+ | Custom | Stripe | Prisma + Postgres | Remix/RR7 |
| React Router SaaS Template | Free | Custom | Stripe | Prisma | RR7 |
| TurboStarter RR7 | $149 | Better Auth | Stripe | Drizzle | RR7 + Hono |
What Makes React Router v7 Different for SaaS
Before evaluating starters, understand what v7 brings to SaaS development:
Type-safe loaders and actions. React Router v7 generates TypeScript types for every route's loader and action automatically. No more casting useLoaderData() manually — the types flow through.
// app/routes/dashboard.tsx
import type { Route } from "./+types/dashboard";
export async function loader({ request }: Route.LoaderArgs) {
const user = await getUser(request);
const subscription = await getSubscription(user.id);
return { user, subscription };
}
export default function Dashboard({ loaderData }: Route.ComponentProps) {
// loaderData is fully typed — no casting needed
const { user, subscription } = loaderData;
return <DashboardUI user={user} subscription={subscription} />;
}
Streaming with Suspense. React Router v7 supports defer() for streaming slow data without blocking the initial render:
export async function loader() {
// Fast data — loads synchronously
const user = await getUser();
// Slow data — streams in after initial render
const analyticsPromise = getAnalyticsData();
return defer({
user,
analytics: analyticsPromise,
});
}
File-based routing. Convention-over-configuration routing that eliminates routing boilerplate.
1. MakerKit React Router 7 — Best Full-Featured Kit
Price: $299 one-time | License: Commercial, 1 project Stack: React Router v7 + Supabase + Stripe + shadcn/ui
MakerKit is the most production-ready React Router v7 SaaS starter available. It's a commercial kit from a team that's been building SaaS starters for years across Next.js, Remix, and now React Router 7.
What you get:
- Multi-tenancy with organizations and team management
- Role-based permissions (owner, admin, member)
- Supabase Auth (email, OAuth, magic link)
- Stripe billing with subscription management, webhooks
- Lemon Squeezy as alternative payment processor
- Supabase database with Row Level Security
- Email via Nodemailer/Resend
- Dark mode, i18n (internationalization)
- Admin panel for user management
- E2E tests with Playwright
Key architectural decision: MakerKit uses Supabase as the database, auth provider, and file storage. This keeps the stack unified — one platform for multiple concerns — at the cost of coupling to Supabase's pricing model.
// MakerKit's multi-tenant auth pattern
// app/lib/auth/require-organization.ts
import { requireUser } from '~/lib/auth/require-user';
import { getOrganization } from '~/lib/database/organizations';
export async function requireOrganization(
request: Request,
organizationSlug: string
) {
const user = await requireUser(request);
const organization = await getOrganization({
userId: user.id,
slug: organizationSlug,
});
if (!organization) {
throw redirect('/dashboard');
}
return { user, organization };
}
Best for: Developers who want a complete commercial-grade SaaS with multi-tenancy and are comfortable paying for a template.
2. RSK (React Starter Kit) — Best Free Modern Stack
Price: Free (MIT) | GitHub: michaelshimeles/react-starter-kit Stack: React Router v7 + Convex + Clerk + Polar.sh
RSK is the most interesting free React Router v7 starter because it pairs it with a modern backend stack: Convex for real-time database (replaces Supabase/Prisma), Clerk for auth (managed, no self-hosting), and Polar.sh for billing (developer-focused payment infrastructure).
What you get:
- Clerk auth (email, social, passkeys) — zero auth code to write
- Convex real-time database — live queries that update without polling
- Polar.sh billing — subscriptions and one-time payments
- AI chat interface pre-built
- shadcn/ui components
- Dark mode
- TypeScript throughout
// RSK's real-time data with Convex
// app/convex/users.ts
import { query } from "./_generated/server";
import { v } from "convex/values";
export const getUser = query({
args: { userId: v.string() },
handler: async (ctx, { userId }) => {
return await ctx.db
.query("users")
.filter((q) => q.eq(q.field("clerkId"), userId))
.first();
},
});
// In your React Router loader:
export async function loader({ request }: Route.LoaderArgs) {
// Convex queries run on the edge, fully typed
const user = await fetchQuery(api.users.getUser, { userId: clerkId });
return { user };
}
Best for: Developers who want the latest tech stack (Convex + Clerk) without the weight of a commercial boilerplate. The free MIT license means no licensing headaches.
3. SaasRock — Best for B2B SaaS
Price: $299 (Core) / $999 (Enterprise) | Framework: Remix/React Router 7 Stack: React Router v7 + Prisma + Stripe + Tailwind
SaasRock is built specifically for B2B SaaS with features that other starters skip: pricing page builder, blog, admin portal, feature flags, custom entity builder (create database-backed resources via UI), and a full CRM module.
B2B-specific features:
- Multi-tenant with organizations, invitations, RBAC
- CRM: contacts, deals, pipeline management
- Pricing page builder (drag visual pricing tiers)
- Blog with CMS functionality
- Feature flags per plan
- Custom entity/form builder
- Analytics dashboard
Best for: Founders building B2B SaaS who need CRM and admin features from day one. SaasRock is the most feature-complete commercial option.
4. React Router SaaS Template (Community)
Price: Free (MIT) | Community: Open source Stack: React Router v7 + Prisma + Stripe + PostgreSQL
A community-maintained free starter covering the essentials: authentication with email/password and OAuth, Stripe billing with subscription webhooks, Prisma database schema with PostgreSQL, and a dashboard UI skeleton.
Less polished than MakerKit or SaasRock, but genuinely free and a good starting point for developers who want to understand every line of their boilerplate before extending it.
// Community template: Stripe webhook handler pattern
// app/routes/webhooks.stripe.ts
import Stripe from 'stripe';
import { stripe } from '~/lib/stripe.server';
export async function action({ request }: Route.ActionArgs) {
const payload = await request.text();
const sig = request.headers.get('stripe-signature')!;
let event: Stripe.Event;
try {
event = stripe.webhooks.constructEvent(
payload,
sig,
process.env.STRIPE_WEBHOOK_SECRET!
);
} catch (err) {
return Response.json({ error: 'Invalid signature' }, { status: 400 });
}
switch (event.type) {
case 'customer.subscription.created':
case 'customer.subscription.updated':
await updateSubscription(event.data.object as Stripe.Subscription);
break;
case 'customer.subscription.deleted':
await cancelSubscription(event.data.object as Stripe.Subscription);
break;
}
return Response.json({ received: true });
}
5. TurboStarter — Best for Edge/Hono Backend
Price: $149 | Stack: React Router v7 + Hono + Drizzle + Better Auth
TurboStarter is the right choice if you want an edge-first backend: Hono as the API layer (deploys to Cloudflare Workers, Deno Deploy, or Bun), Drizzle ORM for type-safe SQL, and Better Auth for self-hosted authentication.
Why choose Hono + React Router v7 over Next.js:
- Hono runs natively on Cloudflare Workers — global edge, not Node.js
- Drizzle generates SQL migrations you can read and audit
- Better Auth runs on your infrastructure, no vendor lock-in
- React Router v7 SSR + Hono API on the same edge node = minimal latency
Key Differences: Auth Strategy
| Starter | Auth Approach | Pros | Cons |
|---|---|---|---|
| MakerKit | Supabase Auth | Full control, self-hosted | Supabase coupling |
| RSK | Clerk (managed) | Zero auth code | $25+/month at scale |
| SaasRock | Custom sessions | Full control | More maintenance |
| Community | Custom sessions | Free, auditable | You maintain it |
| TurboStarter | Better Auth | OSS, self-hosted | Newer, less docs |
Which React Router v7 Starter to Pick
Choose MakerKit if you want the most complete, commercially supported starter with multi-tenancy and are building a product where $299 is trivial.
Choose RSK if you want the latest free stack (Convex + Clerk + Polar.sh) and are comfortable with a less battle-tested foundation.
Choose SaasRock if you're building B2B SaaS and need CRM, admin portal, and pricing builder from day one.
Choose the community template if you want to fully understand your codebase and are willing to extend a simpler foundation yourself.
Choose TurboStarter if edge deployment (Cloudflare Workers) is a hard requirement.
Find and compare all React Router v7 boilerplates at StarterPick.
Related: Best Next.js SaaS Boilerplates 2026 · Best Boilerplates Using Better Auth 2026
Check out this boilerplate
View MakerKit React Router 7 on StarterPick →