Build a full-featured SaaS application with authentication, subscription billing, and a dashboard.
A production-ready SaaS boilerplate using Next.js 14+ App Router. Includes user authentication with NextAuth.js, Stripe subscription billing, a user dashboard, and admin panel. Designed for rapid SaaS development with best practices baked in.
- Next.js 14+ App Router with TypeScript
- Authentication (NextAuth.js) with email/password and OAuth
- Stripe subscription billing with multiple tiers
- User dashboard with analytics
- Admin panel for user management
- Dark mode support
- Responsive design with Tailwind CSS
- Database with Prisma ORM
- Email notifications
- API rate limiting
- Initialize Next.js 14 project with TypeScript
- Configure Tailwind CSS
- Set up ESLint and Prettier
- Configure path aliases
- Create folder structure
- Install and configure Prisma
- Create User, Account, Session models
- Create Subscription and Plan models
- Set up database migrations
- Add seed data
- Install NextAuth.js
- Configure authentication providers (credentials, Google, GitHub)
- Create login page
- Create registration page
- Create forgot password flow
- Add protected route middleware
- Set up Stripe SDK
- Create pricing plans
- Implement checkout session
- Handle webhooks for subscription events
- Create billing portal integration
- Add subscription status to user model
- Create dashboard layout
- Build overview page with stats
- Create settings page
- Build billing management page
- Add usage analytics charts
- Create admin layout
- Build user management table
- Add subscription management
- Create analytics dashboard
- Build navigation component
- Create reusable card components
- Build form components
- Create modal components
- Add toast notifications
- Create user API endpoints
- Build subscription API endpoints
- Add webhook handlers
- Implement rate limiting
- Add loading states
- Implement error boundaries
- Add SEO meta tags
- Create 404 and error pages
- Test all user flows
- Next.js 14
- TypeScript
- Tailwind CSS
- NextAuth.js
- Prisma
- PostgreSQL
- Stripe
- React Query
- Zod (validation)
- Resend (email)
src/app/layout.tsxsrc/app/page.tsxsrc/app/(auth)/login/page.tsxsrc/app/(auth)/register/page.tsxsrc/app/(dashboard)/dashboard/page.tsxsrc/app/(dashboard)/dashboard/settings/page.tsxsrc/app/(dashboard)/dashboard/billing/page.tsxsrc/app/api/auth/[...nextauth]/route.tssrc/app/api/webhooks/stripe/route.tssrc/lib/auth.tssrc/lib/stripe.tssrc/lib/prisma.tssrc/components/ui/button.tsxsrc/components/ui/card.tsxsrc/components/ui/input.tsxsrc/components/navigation.tsxsrc/components/dashboard-nav.tsxprisma/schema.prisma.env.exampletailwind.config.ts