next-starter is a Next.js 15 (App Router) boilerplate template that ships with TypeScript, Tailwind CSS 4, shadcn/ui, Next-auth, Stripe, Drizzle ORM, and a complete testing setup so you can start a production-grade web app from a single GitHub repository.
What is next-starter?
next-starter is a pre-configured starter template that combines the Next.js App Router with a curated list of libraries: next-auth for GitHub authentication, Stripe for payments, Drizzle for database access, Zod for validation, and next-intl for i18n. It takes your environment variables and project configuration as input and produces a deployable application with authentication, payment handling, a Neon database, and a sitemap generated at build time. The template was created by Michał Skolak and is publicly hosted on GitHub with a live demo on Vercel.
Key Features
- Next.js 15 with App Router — Uses the latest React 19 and TypeScript for server components, routing, and server actions in the
src/appdirectory. - Tailwind CSS 4 with class sorting — Styling is handled by Tailwind CSS 4, with Prettier and ESLint configured to sort, merge, and lint classes.
- shadcn/ui components — Includes a customizable UI component library that you can extend with your own design tokens.
- Authentication via Next-auth — GitHub provider is pre-configured, and the template includes example server actions for protected routes.
- Stripe payment handler — Payment processing is set up with Stripe, ready for subscriptions or one-time payments.
- Drizzle ORM with Neon — Database schema and migrations live in the
prismafolder (the README lists prisma, though the feature list says Drizzle), and the template is wired to a Neon PostgreSQL serverless database. Note: the project structure shows aprismadirectory, so both are referenced. - Testing with Jest and Playwright — Unit tests use Jest and React Testing Library, while end-to-end tests use Playwright, both with npm scripts ready.
- Developer experience tools — Husky git hooks, Commitlint, Lint-staged, T3-env for environment variables, GitHub Actions for PR linting, absolute imports with the
@/alias, Lucide icons, and dark mode with next-themes. - Sitemap and robots.txt — A
postbuildscript generates the sitemap automatically after each build. - Perfect Lighthouse score — The template is optimized for performance, accessibility, and SEO.
Who is it for?
- Full-stack developers who want a production-ready foundation with authentication, payments, and a database already integrated instead of wiring them up manually.
- Startup teams building SaaS products that need Stripe billing, a Neon PostgreSQL database, and GitHub sign-in from day one.
- Open-source contributors who want to experiment with a modern Next.js stack that includes testing, linting, and CI via GitHub Actions.
- Indie hackers launching a new web app quickly, who benefit from the included i18n support and dark mode without extra configuration.
What can you do with next-starter?
- SaaS founders — Add a paid subscription flow using the pre-wired Stripe integration and protect routes with Next-auth.
- Product developers — Build a multi-language landing page or dashboard using next-intl, and toggle dark mode with next-themes.
- Test-driven developers — Write unit tests with Jest and React Testing Library, then verify critical flows with Playwright end-to-end tests.
- Open-source maintainers — Use the template as a baseline for a new project, keeping the built-in ESLint, Prettier, Commitlint, and GitHub Actions that enforce code quality on pull requests.
How does next-starter work?
To use the template, you clone the repository with npx create-next-app -e https://github.com/Skolaczk/next-starter my-project-name (or use the GitHub "Use this template" button), install dependencies with npm install, create a .env file from .env.example, run npm run prepare to set up Husky, and start the dev server with npm run dev. The README provides a full project structure and a script overview that includes test, e2e, lint, format:check, and typecheck.
FAQ
Is next-starter free to use?
Yes, the template is publicly available on GitHub and open for anyone to clone and use. The repository does not include a paid license, so it is effectively free for personal and commercial use.
What database does next-starter use?
The template is configured to use Neon, a serverless PostgreSQL database, with Drizzle ORM mentioned in the feature list. The project structure also includes a prisma folder for schema and migrations, so both are part of the setup.
How do I deploy next-starter?
You can deploy it to Vercel with a single click using the "Deploy with Vercel" button in the README, or build and run it locally with npm run build and npm run start.
Does next-starter include authentication?
Yes, Next-auth is integrated with the GitHub provider, and the template includes example server actions and protected routes so you can add authorization to your app.
What testing tools are included?
Jest with React Testing Library is configured for unit tests, and Playwright is configured for end-to-end tests. The npm scripts test, test:watch, e2e, and e2e:ui are ready to run.





