Start at full speed with SaaS Starter !
Introduction · Installation · Tech Stack + Features · Author · Credits
Empower your next project with the stack of Next.js 14, Prisma, PostgreSQL, Auth.js v5, Resend, React Email, Shadcn/ui, and Stripe.
All seamlessly integrated with the SaaS Starter to accelerate your development and saas journey.
Clone & create this repo locally with the following command:
npx create-next-app my-saas-project --example "https://github.com/johanguse/next-saas-template"- Install dependencies using pnpm:
pnpm install- Copy
.env.exampleto.env.localand update the variables.
cp .env.example .env.local- Start the development server:
pnpm devIn case you need to change the database and seed again on localhost or at Vercel, use this command:
prisma generate && prisma db push --force-reset && pnpm prisma:seed && next buildReplace the at Vercel the default Build Command to this above
Warning
You need update .react-email folder before use pnpm run email. Check the link here if you have the error : renderToReadableStream not found
You can't use turbo mode to sent react-email. Check the issue here
So if you are developer the emails use the command pnpm run dev if you are not you can use pnpm run dev:turbo
Visit our Public Roadmap for more
- Next.js – React framework for building performant apps with the best developer experience
- Auth.js – Handle user authentication with ease with providers like Google, Twitter, GitHub, etc.
- Prisma – Typescript-first ORM for Node.js
- React Email – Versatile email framework for efficient and flexible email development
- Vercel – Easily preview & deploy changes with git
- PostgreSQL – Open source object-relational database system with over 35 years of active development
- Resend – A powerful email framework for streamlined email development
- Tailwind CSS – Utility-first CSS framework for rapid UI development
- Shadcn/ui – Re-usable components built using Radix UI and Tailwind CSS
- Framer Motion – Motion library for React to animate components with ease
- Lucide – Beautifully simple, pixel-perfect icons
next/font– Optimize custom fonts and remove external network requests for improved performance
useIntersectionObserver– React hook to observe when an element enters or leaves the viewportuseLocalStorage– Persist data in the browser's local storageuseScroll– React hook to observe scroll position (example)nFormatter– Format numbers with suffixes like1.2kor1.2Mcapitalize– Capitalize the first letter of a stringtruncate– Truncate a string to a specified lengthuse-debounce– Debounce a function call / state update
- TypeScript – Static type checker for end-to-end typesafety
- Prettier – Opinionated code formatter for consistent code style
- ESLint – Pluggable linter for Next.js and TypeScript
- Vercel Analytics – Track unique visitors, pageviews, and more in a privacy-friendly way
Created by @johanguse in 2023