3K stars on GitHub

One starter. Any project.

A modular Next.js foundation. Begin with a blog, end up with a SaaS.

  • Auth

    Sign-in, sessions and organizations.

  • Billing

    Stripe subscriptions and customer portal.

  • Admin

    Manage users, roles and bans.

  • Blog

    MDX articles with authors and categories.

  • Docs

    Searchable documentation, powered by Fumadocs.

Built on a modern, production-ready stack

Next.jsReactTypeScriptTailwind CSSshadcn/uiBetter AuthDrizzle ORMNeonStripeFumadocsVercel
Modular by design

Flip a switch, reshape the app

Turn a module off, and its routes and links go with it.

Modules⌥MDev only

  • Sign-in, sign-up and the dashboard.

  • Subscriptions and customer portal.

  • User management for platform admins.

  • MDX documentation powered by Fumadocs.

  • MDX articles with authors and categories.

  • Product updates on a single page.

For config/features.ts

The real panel sits in the bottom corner of your dev server.

Delete a module for good, in one command

Not shipping a blog? pnpm modules:prune deletes the module's files, the lines marked for it in shared code, its flag and its packages. It prints a dry run first and only applies on a clean git tree.

Learn more

Dependencies resolved, never broken

Modules declare what they build on. Turn Auth off and Billing and Admin pause with it; turn Billing back on and Auth comes along. The panel tells you before it happens.

Learn more

One flag per module, in one file

The panel only changes your browser. Once a setup feels right, Copy config gives you the defaults to set in config/features.ts. Nothing to add to your environment.

Learn more

Services checked before anything breaks

A module that needs Stripe stays off until its keys are set, and the panel lists the exact variables missing. No database yet? Turn Auth off and the app runs without one.

Open source, MIT

Read every line, fork it, ship it commercially. No license key, no lock-in.

Plain Next.js

A module is a folder, a flag and a few markers. No plugin system to learn.

Ready for AI agents

AGENTS.md teaches coding agents the module conventions, so what they write stays prunable.

Nothing extra in production

The panel only renders in development. Production reads config/features.ts and that's it.

Take what you need. Nothing else.

A starter should fit your product, not the other way around.

All-in-one kits

  • Every feature is wired into your app from day one
  • Removing one means tracing its files and imports by hand
  • Code you never use still ships and still needs upkeep

This starter

  • Switch a module off from the dev panel in one click
  • Bring it back anytime, nothing is lost
  • Delete it for good with one command, tested in CI

Ship the product, not the plumbing

Start from the free, modular starter today. Add Pro when you want onboarding, emails and team billing done for you.