Skip to Content
Build an appStacks & boilerplates

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.

LayerOption AOption BOption C
FrameworkNext.js (App Router)Next.js (App Router)SvelteKit
StylingTailwind + shadcn/uiTailwind + shadcn/uiTailwind
DatabaseSupabase (Postgres)Neon (Postgres) + DrizzleSupabase
AuthClerkSupabase AuthSupabase Auth
PaymentsStripeStripeStripe
HostingVercelVercelVercel or Cloudflare
EmailResendResendResend

Get started:

Marketing website (landing, about, pricing, contact)

Static-ish site that loads fast and looks great. No database needed.

LayerOption AOption B
FrameworkNext.js (App Router)Astro
StylingTailwind + custom componentsTailwind
CMSMDX files in repoSanity or Contentful
FormsResend + server actionFormspree
AnalyticsVercel AnalyticsPlausible
HostingVercelCloudflare Pages

Get started:

  • npx create-next-app@latest for Next.js path
  • npm create astro@latest for Astro path (better for content-heavy sites with minimal JS)

Blog / content site

Optimized for reading, SEO, and low maintenance.

LayerOption AOption B
FrameworkAstroNext.js + MDX
ContentMarkdown/MDX filesHeadless CMS (Sanity, Contentful)
StylingTailwindTailwind
SearchPagefindAlgolia
HostingCloudflare PagesVercel

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).

LayerOption AOption B
RuntimeNode.js + HonoPython + FastAPI
DatabaseNeon (Postgres)Supabase (Postgres)
ORMDrizzleSQLAlchemy
AuthJWT + middlewareJWT + middleware
HostingVercel FunctionsRailway or Fly.io

Boilerplate resources

ResourceWhat 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

  1. What are you building? Match the project type above.
  2. What do you already know? Stick with familiar tools for v1 — learn new ones on project #2.
  3. Where will users be? Global → edge-friendly hosting. Small audience → anything works.
  4. Will people pay? If yes, include Stripe from day one — retrofitting payments is painful.

Last reviewed: April 2026.