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.example
to.env.local
and update the variables.
cp .env.example .env.local
- Start the development server:
pnpm dev
In 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 build
Replace 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.2k
or1.2M
capitalize
– 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