Multi-factor authentication
Users enroll an authenticator app and are challenged for a code at sign-in.
Inside MakerKit





> Add a projects table scoped to team accounts
Context your harness loads
Root rules first, then the folder the agent works in
Products built on MakerKit
AmplefoundAI-organic growth agent
GondlaThe first content engine designed for Hybrid Search Visibility
ConvoQualitative Research At Scale
QA.techShip faster with AI agents that create and run your QA tests
ReplybossFind relevant posts on X. Grow faster and sell more.
ReplenoInventory management for craft & small businessesLoaders read data and actions write it, each with a Supabase server client from the request. Teams, roles, and billing are scoped by Postgres RLS, so the database enforces tenant isolation. Deploy guides for Vercel, Cloudflare, Fly.io, Docker, and a VPS.
Password, magic link, passkeys, OAuth and multi-factor authentication, with the emails that go with them.
Users enroll an authenticator app and are challenged for a code at sign-in.
Templates written in JSX with React Email, sent through Resend or Nodemailer (SMTP).
Password, magic link and social sign-in, configured per environment.
Opt-in sign-in with Face ID, Touch ID, Windows Hello or a security key. No password to phish.
Passwordless sign-in: users get a one-time link by email instead of typing a password.
The multi-tenant SaaS boilerplate parts: auth, billing, teams with roles, and a super admin that can impersonate or ban users and teams, plus the screens your customers use to manage them.
Roles map to permissions that your code and your database policies both check.
Users change plans, update payment methods and download invoices without a support ticket.
Users belong to several teams and switch between them, or work in their personal account.
Flat, per-seat and metered subscriptions through Stripe Checkout, with webhooks that keep plans and seats in sync with your database.
Billing, email, CMS and monitoring sit behind interfaces, so changing provider is configuration, not a rewrite.
Every UI string comes from translation files, so adding a language is content work.
Rules, an MCP server and strict checks keep generated code in the kit’s patterns.
AGENTS.md files at the root and in each package teach coding agents the kit’s conventions.
Strict TypeScript and linting across the monorepo, so type errors surface before your users find them.
Gives Claude Code, Cursor, Codex and Gemini structured access to the kit: database, components, translations, checks and PRDs.
Tests for authentication, team accounts and invitations, written with page objects you can extend.
The full source lives in your repository. Nothing is hidden behind a package you cannot edit.
The parts nobody lists until they are missing: content, deployment, documentation, and people to ask when you get stuck.
The setup, stack, and tooling are decided, so your first commit is a product feature.
Clone the repository, install dependencies, and start the dev server: the full SaaS runs locally, not a demo shell.
Built on React Router 8, React 19, Supabase, Zod 4, Shadcn UI, Tailwind CSS 4, and TypeScript 7. Upgrades land through the public changelog.
Strict TypeScript, Oxlint, and oxfmt configured across the monorepo. The Rust-based Oxc toolchain keeps lint and format feedback fast as the codebase grows.
Password, magic link, OAuth, and MFA through Supabase Auth, with sessions available to every server request.
Secure email/password authentication with built-in password reset, email verification, and account recovery flows.
Passwordless sign-in: users click a link in their inbox and skip the password entirely.
WebAuthn passkeys: users sign in with Face ID, Touch ID, Windows Hello, or a hardware security key. Phishing-resistant, with nothing to reset.
Google, GitHub, Facebook, X, Discord, and many more OAuth providers ready to configure.
TOTP-based MFA to protect your users' accounts, with enrollment and challenge screens included.
Team accounts, invitations, and roles, with Postgres RLS policies scoping every query to the accounts a user belongs to.
Full B2B multi-tenancy support. Let customers create workspaces, manage teams, and collaborate securely.
Email-based invitation system with role assignment. Onboard team members with a single link.
Granular role-based access control (RBAC). Define custom roles and permissions that match your product's needs.
Stripe or Lemon Squeezy subscriptions, including per-seat and metered billing, for personal and team accounts.
Stripe Checkout handles cards, Apple Pay, Google Pay, and other payment methods.
Self-service subscription management. Customers update payment methods, view invoices, and cancel without opening a support ticket.
Per-seat, usage-based, flat-rate subscriptions, or one-time purchases. Plans live in one billing schema that checkout and the pricing table both read.
Manage your users, organizations, and build your own internal tooling within the app.
See users, organizations, and subscriptions in one dashboard, restricted to super admins.
Explore, impersonate users, ban/delete accounts, all without touching the database.
Screens for every flow, built from the same Shadcn UI components you will use for your own features.
A landing page template with hero, features, pricing, and call-to-action sections to adapt to your product.
Dashboard demo components with charts, ready to wire to your own data.
Every Shadcn UI component pre-installed and themed. Browse, copy, and customize from our built-in dev tools.
A pricing table generated from your billing config: change a price in one place and the page follows.
Get found by your target audience with blog, documentation, changelog, and more.
A blog for product updates and SEO content, with per-post metadata and sitemap entries.
Reduce support load and improve user onboarding with the built-in documentation. Educate users and drive traffic to your product.
Keep users engaged with product updates. Announce features, fixes, and improvements in a dedicated changelog.
Comprehensive monitoring and testing tools to help you keep your SaaS running smoothly.
Pre-configured end-to-end tests for critical user flows. Ship with confidence, catch regressions before your users do.
Plug-and-play support for Sentry, PostHog, Signoz, and more. Monitor errors, track analytics, and debug production issues.
Ask me and the MakerKit community on Discord about setup, kit-related issues, and how the codebase fits together.
Developers and founders on the kits, the docs and the support. Every quote links to the original post.
just wanna say thanks to @gc_psk for building @makerkit_dev . it is such an overpowered template. like finally we have a really good one with active development, good docs and now even cursorrules/windsurfrules to just sit down and see ai agents do the stuff. truly mindblowing.

Built and maintained full-time by Giancarlo, a software engineer with almost 15 years of experience at startups and enterprises. Support questions reach me directly.
My favorite so far is @gc_psk and @makerkit_dev ship cursor rules along with updates to the framework. That's been really useful to pull in new version (via git remote) and things stay in sync.
Just started using MakerKit and it's a total game-changer. 🚀 Wish I had this when I was building Phishr. Instant team management and billing? Insane.
Second that! Giancarlo provides amazing support!! 😄
You need to check @makerkit_dev by @gc_psk — it’s the best I’ve seen so far. It’s feature complete, plenty examples, amazing docs, great Discord community, the dude provides support even days after his weeding (which is crazy!) I’m not affiliated in every way, just a happy cx.
Honestly @makerkit_dev is great. More for B2B products but really clean and well documented.
Amazing! @gc_psk has built a masterpiece with this one!
I just stumbled upon @makerkit_dev (and you!), it's impressive, I thought it was a big team behind how many features I saw (and I've been working in software a long time!) I was just looking for a free boilerplate, but the lifetime licence makes it a no brainer. Thank you!
I would have totally agreed with you until… I found @makerkit_dev last year. This is by far, the best boilerplate I found those past years. The dev is pushing new features and updates almost every week. His documentation (specially migrating to Next 15) is the best I’ve seen.
Makerkit is a gem for makers, if I was not building a desktop app I would be using it for sure, maybe for my next project
I landed on MakerKit after getting into boilerplates with ShipFast. Much better.
1000% recommend buying a good boilerplate (or making your own) I use @makerkit_dev it's so good I had an affiliate link, but I can't find it at the moment
For anyone who wants to build their own SaaS, I recommend trying out @makerkit_dev. Thanks to @gc_psk for creating such a fantastic tool that makes building websites a breeze! #SaaS #buildinpublic
We loved the product since when Giancarlo released the first version, and are building upon it ever since for all of our products. Highly recommended for all indie makers out there.
Solid and battle tested boilerplate with an amazing community and support.
React Router gives you loaders and actions. Accounts, roles, billing webhooks, and admin tooling are still yours to write. With AI coding tools, that is still 49-81 hours of senior developer time, including fixing the patterns AI got wrong.
Hours with Claude Code or Cursor · bar shows the range on a 0–25h scale
Estimates for a senior developer building from scratch with Claude Code or Cursor at $150/hour, including 15-25 hours refactoring AI-generated patterns. Read the methodology
Loaders read, actions write, and Postgres Row Level Security decides who sees what.
The MakerKit React Router SaaS Starter Kit is a Turborepo monorepo with a React Router 8 app on Supabase. It ships authentication with MFA, personal and team accounts, roles and invitations, Stripe or Lemon Squeezy billing (flat, per-seat, metered, and one-off), a super admin, and a marketing site with a blog and docs, plus agent rules and an MCP server.
Personal and team accounts, roles, and invitations are backed by Supabase Row Level Security policies.
Route.LoaderArgs and Route.ActionArgs everywhere, with a Supabase server client created from each request.
Stripe or Lemon Squeezy, with flat, tiered, per-seat, metered, and one-off billing, plus a documented credit-based billing recipe.
Production guides for Vercel, Cloudflare, Fly.io, Docker, and a VPS.
AGENTS.md and CLAUDE.md files at the root and in each package, rules for Claude Code, Cursor, Codex, and Gemini, and an MCP server your agent can call.
Maintained since the Remix days, with a documented migration from Remix to React Router.
Without MakerKit: Tenant checks repeated in every loader
With MakerKit: RLS policies enforce tenancy in Postgres
Without MakerKit: Wiring Stripe webhooks to accounts and seats yourself
With MakerKit: A billing gateway with per-seat and metered billing built in
Without MakerKit: An agent guessing where React Router code belongs
With MakerKit: AGENTS.md files and an MCP server that describe the kit
Without MakerKit: Picking a deploy target and hoping it fits
With MakerKit: Guides for Vercel, Cloudflare, Fly.io, Docker, VPS
Included in the Supabase stack license with the Next.js and TanStack Start kits. One-time purchase: lifetime license, continuous updates, unlimited projects of your own.
Pro A B2B SaaS Starter Kit for individual developers.
| Teams A B2B SaaS Starter Kit for teams of developers or companies.
|
Questions about licensing?
Read the MakerKit license terms and the MakerKit FAQ, or contact me.
Not covered here? Ask in Discord or contact me. Licensing details are in the MakerKit license terms.
A Turborepo monorepo with a React Router 8 app on Supabase. It ships authentication with MFA, personal and team accounts, roles and invitations, subscription billing with Stripe or Lemon Squeezy, a super admin panel, and a marketing site with a blog and docs. It is the successor to the MakerKit Remix boilerplate.
Through React Router's own primitives. Pages read data in route loaders and write it in route actions, both typed with the generated Route.LoaderArgs and Route.ActionArgs, and both create a Supabase server client from the incoming request. Components submit to actions with useFetcher. There are no React Server Components or Server Actions to reason about.
Choose React Router if you want an explicit request and response model: routes declared in routes.ts, data in loaders, mutations in actions. Choose the Next.js kit if you want React Server Components, the larger ecosystem, or a Drizzle or Prisma data layer, which the React Router kit does not offer.
The core SaaS features, yes: auth with MFA, team accounts, roles, invitations, per-account billing (flat, tiered, per-seat, metered, and one-off payments, plus a documented credit-based billing recipe), a super admin, emails, and translations. The data layer is Supabase only, and billing runs on Stripe or Lemon Squeezy.
Vercel, Cloudflare, Fly.io, Docker, or a VPS. The documentation has a production guide for each, plus a go-live checklist covering Supabase auth settings, environment variables, and database webhooks.
Yes. The docs include a Remix to React Router migration guide: imports move from @remix-run/react and @remix-run/node to react-router, json() responses become plain returned objects, loaders and actions use the generated Route types, and file-based routes become entries in routes.ts.
A one-time purchase. You get a lifetime license to the source code, continuous updates for the stack you bought, and unlimited projects for your own business, with no renewal fee. Building products for clients requires a Team license, and each client that receives the code needs their own license.
Discord support from me, Giancarlo, the founder who works on MakerKit full-time, and from the community. I help with setup, kit-related issues, and questions about the codebase. Team licenses add a private Discord channel for your team.
Loaders, actions, Supabase RLS, billing, and admin are wired and maintained. Buy once, clone the React Router SaaS starter kit, and make your first commit a product route.
Read the React Router SaaS Starter Kit docs