LaunchKitNetcane

Next.js SaaS starter kit

Don't rebuild auth, orgs, and billing from scratch

LaunchKit is a sellable starter you buy once — full source for multi-tenant Next.js SaaS (auth, teams, Stripe, themes). The live site is a demo of that kit, not the end product you're building.

LaunchKit projects workspace

See the starter running, not a mock

You're looking at real UI from the kit. Sign up to poke at it — buyers get the same codebase to brand and extend into their own SaaS.

LaunchKit marketing and entry experience
Brand entry and auth-ready paths
LaunchKit projects module
Org-scoped projects with empty states and actions

Everything between idea and invoice

Skip the boring months. LaunchKit is a production-shaped foundation — not a toy tutorial dump.

  • Multi-tenant organizations

    Org-scoped data, slug routing, and workspace switching — the pattern every B2B SaaS needs.

  • Auth that ships

    Email/password, Google OAuth, email verification, password reset, and rate limiting included.

  • Team invites & RBAC

    Invite by email, accept flows, pending invites, and OWNER / ADMIN / MEMBER roles enforced.

  • Stripe Free → Pro

    Checkout, Customer Portal, webhooks, and a real gate: Free gets 3 projects, Pro is unlimited.

  • Three product themes

    Teams, Linear, and Stripe Dashboard looks — switch instantly, persist preference.

  • Example product module

    Projects CRUD with tables, dialogs, and empty states you can copy for your own features.

Opinionated code you can own

A short peek at plan gating — real product rules, not fake screenshots of architecture diagrams. You get the full source when you buy.

  • Next.js App Router + Auth.js
  • Prisma + Postgres
  • Stripe Checkout & webhooks
  • Resend-ready email flows
export async function createProject(orgSlug: string, formData: FormData) {
  const { org } = await getOrgForUser(orgSlug);
  const plan = await getOrgPlan(org.id);

  if (!plan.isPro && plan.projectLimit !== null) {
    const count = await db.project.count({ where: { orgId: org.id } });
    if (count >= plan.projectLimit) {
      throw new PlanLimitError(plan.projectLimit);
    }
  }

  await db.project.create({
    data: { orgId: org.id, name: parsed.data.name },
  });
}

Simple pricing. Shipping soon.

Themes are included — you choose a license tier, not a skin pack. Join early access while we open checkout.

Starter

One founder, one commercial product.

$149one-time

  • Full source access
  • Auth, orgs, billing, invites
  • 3 themes included
  • Email support
Notify me

Coming soon

Most popular

Studio

Ongoing updates for serious builders.

$249one-time

  • Everything in Starter
  • 1 year of updates
  • Priority email support
  • Commercial license
Notify me

Coming soon

Agency

Ship client portals without rebuilding.

$499one-time

  • Everything in Studio
  • Use on client projects
  • Multi-seat friendly
  • Onboarding call
Notify me

Coming soon

Try the live demo

Create an account, invite someone, swap themes — prove the kit works before you buy the source.

Open live demo