Stacks & boilerplates
Why stacks matter
A “stack” is the combination of tools you use together: framework + styling + database + auth + hosting. Picking a coherent stack up front saves hours of compatibility debugging later.
There is no universal best stack. But there are well-trodden combinations where tutorials, examples, and community support are dense. Start with one of those unless you have a specific reason not to.
Stack recipes
SaaS app (full-stack with auth and payments)
The most common “I want to build a product people pay for” stack.
| Layer | Option A | Option B | Option C |
|---|---|---|---|
| Framework | Next.js (App Router) | Next.js (App Router) | SvelteKit |
| Styling | Tailwind + shadcn/ui | Tailwind + shadcn/ui | Tailwind |
| Database | Supabase (Postgres) | Neon (Postgres) + Drizzle | Supabase |
| Auth | Clerk | Supabase Auth | Supabase Auth |
| Payments | Stripe | Stripe | Stripe |
| Hosting | Vercel | Vercel | Vercel or Cloudflare |
| Resend | Resend | Resend |
Get started:
npx create-next-app@latest→ add Clerk → add Stripe → connect Supabase/Neon- Or use a boilerplate like next-saas-starter or next-forge
Marketing website (landing, about, pricing, contact)
Static-ish site that loads fast and looks great. No database needed.
| Layer | Option A | Option B |
|---|---|---|
| Framework | Next.js (App Router) | Astro |
| Styling | Tailwind + custom components | Tailwind |
| CMS | MDX files in repo | Sanity or Contentful |
| Forms | Resend + server action | Formspree |
| Analytics | Vercel Analytics | Plausible |
| Hosting | Vercel | Cloudflare Pages |
Get started:
npx create-next-app@latestfor Next.js pathnpm create astro@latestfor Astro path (better for content-heavy sites with minimal JS)
Blog / content site
Optimized for reading, SEO, and low maintenance.
| Layer | Option A | Option B |
|---|---|---|
| Framework | Astro | Next.js + MDX |
| Content | Markdown/MDX files | Headless CMS (Sanity, Contentful) |
| Styling | Tailwind | Tailwind |
| Search | Pagefind | Algolia |
| Hosting | Cloudflare Pages | Vercel |
Get started:
npm create astro@latest— Astro is purpose-built for content and ships zero JS by default- This wiki itself runs on Next.js + Nextra + MDX — see the NK Wiki repo for a real example
API / backend service
When you need a standalone backend (not bundled with a Next.js frontend).
| Layer | Option A | Option B |
|---|---|---|
| Runtime | Node.js + Hono | Python + FastAPI |
| Database | Neon (Postgres) | Supabase (Postgres) |
| ORM | Drizzle | SQLAlchemy |
| Auth | JWT + middleware | JWT + middleware |
| Hosting | Vercel Functions | Railway or Fly.io |
Boilerplate resources
| Resource | What it is |
|---|---|
| next-saas-starter | Next.js + Postgres + Stripe — minimal, maintained by Vercel’s Lee Robinson |
| next-forge | Turborepo monorepo with Next.js, auth, billing, email, analytics |
| create-t3-app | Next.js + tRPC + Prisma + Tailwind + NextAuth — opinionated full-stack |
| Astro Starter Kit | Collection of Astro templates for blogs, portfolios, docs |
| shadcn/ui templates | Dashboard, authentication, and other UI patterns |
How to choose
- What are you building? Match the project type above.
- What do you already know? Stick with familiar tools for v1 — learn new ones on project #2.
- Where will users be? Global → edge-friendly hosting. Small audience → anything works.
- Will people pay? If yes, include Stripe from day one — retrofitting payments is painful.
Related
- Frontend framework — deeper dive on framework choice
- Backend & data — database and API options
- Authentication — auth services compared
- Deployment — hosting options
Last reviewed: April 2026.