Build guide
What tech stack should you use for your app?
Choose a tech stack by product needs, team skills, ownership, and cost. Compare practical starting points for SaaS, content sites, and AI apps.
Start with what you are building
A tech stack is the set of technologies that run your product: its interface, server behavior, database, authentication, deployment, and monitoring. A language is only one part. TypeScript is a language, React is a UI library, and Next.js is a framework that supplies application structure around React.
Write one sentence describing the main user journey before selecting tools. A public documentation site mostly needs readable pages and a publishing workflow. A subscription app needs accounts, protected data, and entitlement checks. An AI assistant adds model requests, usage budgets, and a way to evaluate answers. These are different requirements, even when their homepages look similar.
- Who is the first user, and what can they accomplish?
- Which data must be private, shared, searchable, or retained?
- Does the product need background jobs, real-time updates, or offline use?
- Who will respond when a provider or deployment fails?
Choose one tool for each job
Separate your choices into application framework, data storage, authentication, styling, deployment, and observability. This prevents comparing unrelated tools: Clerk and Better Auth address identity, while shadcn/ui and Mantine address interface components. Neither choice replaces the application framework.
Our TypeScript SaaS starting point uses Next.js, PostgreSQL, Better Auth, and Tailwind CSS. It is an editorial default for a small TypeScript team, not a universal winner. A content-heavy site may benefit more from a content-oriented framework; a team with an established backend should usually evaluate keeping it before introducing another language or service.
Compare ownership and the cost of operating it
Open-source software and a free hosted plan describe different things. An application-owned auth library leaves database, email delivery, upgrades, and incident response with your team. Managed identity moves some operations to a provider but introduces its pricing, availability, and migration boundaries.
Create a rough monthly budget for compute, database, storage, email, monitoring, and any model usage. Record what happens when a free tier is exceeded, and include the engineering time required to operate self-hosted components. Do not choose a stack on a pricing headline alone.
Validate the stack with one complete slice
Before expanding the architecture, build a small end-to-end workflow: sign in, create a record, enforce ownership on the server, and recover gracefully from a failed request. Deploy to a controlled preview only when you are ready to configure the required services. Record setup steps and recovery commands.
Use a stack page to inspect alternatives and customize its starter prompt. Tell your coding assistant what the product does and which constraints are non-negotiable. A copied prompt is a starting brief, not proof that the resulting application is secure or production-ready.
- Can the team explain each component and remove unnecessary ones?
- Are protected operations checked on the server?
- Are migration, backup, and rollback responsibilities documented?
- Can the same setup be reproduced without secrets in source control?
Choose a stack and copy the starter prompt
Official sources
These are decision guides, not benchmark studies. The recommendations synthesize the linked documentation; verify current setup instructions and pricing before implementation.
Continue planning your build
- How to build a SaaS app: choose the stack and first workflow
- React stack choices: Better Auth or Clerk, shadcn/ui or Mantine?
Found an outdated detail? Send a correction.