Stack playbooks
Pick a stack on purpose
Each playbook covers the circumstances that justify it, why the pieces work together, architectural examples, and the tradeoff that should send you elsewhere.
Vite + React + Supabase + Vercel
A short path from idea to a real product with auth, a database, and a public URL.
skip if — you need server-rendered marketing pages for SEO, or if your authorization rules are too complex to express as row policies.
Next.js + Postgres + Prisma + Vercel
The default choice when you need SEO, server rendering, and typed database access in one codebase.
skip if — your app is a purely internal dashboard behind a login — the server rendering cost buys you SEO you will never use.
Astro + Markdown + CDN
Content sites that stay fast because there is almost no JavaScript to ship.
skip if — the page content depends on who is logged in — personalization fights a fully static build.
WordPress + managed hosting
Hard to beat when non-developers must publish daily and the budget favors plugins over engineers.
skip if — the product is an application rather than a site — app-like state in WordPress means fighting the platform every sprint.
React Native + Expo
One TypeScript codebase for iOS and Android when the app is mostly screens, lists, and forms.
skip if — the product depends on heavy custom rendering, sustained background processing, or bleeding-edge OS features on day one.
Turborepo + pnpm + shared UI package
For teams running several apps that must look and behave like one product.
skip if — you have one app and one team — a monorepo adds tooling overhead that only pays off across multiple consumers.
Tauri + React + SQLite
Small, fast desktop apps built with web skills, with data stored on the user's machine.
skip if — you need pixel-identical rendering on every OS or rely on Chromium-only APIs — each platform's webview differs, and Electron is the safer bet there.
FastAPI + Postgres + SQLAlchemy
A typed Python API for when your data work, ML models, or team already live in Python.
skip if — the whole team writes TypeScript and there's no Python-specific work — a TypeScript backend keeps one language and shares types with the frontend.
Phaser + TypeScript + Vite
2D games that load instantly in a browser tab — and can still ship to Steam.
skip if — you need 3D, console releases, or tens of thousands of moving objects — a native engine like Godot or Unity fits better.
Godot + GDScript
A royalty-free engine for indie games headed to Steam, mobile, or consoles.
skip if — the game must run well in a browser tab, or the team is already deep in Unity's asset ecosystem — Godot's web export has limits and its asset marketplace is smaller.
B2B SaaS (organizations / multi-tenant): Next.js + Postgres + Better Auth
Organizations / multi-tenant apps where your customers are companies: one shared database, per-org data, roles, and SSO.
skip if — your customers are individuals, not organizations — per-tenant scoping, roles, and SSO add weight a single-user app never uses.
TypeScript API service: NestJS + Postgres + Prisma
A standalone TypeScript API that several clients depend on — mobile apps, partners, other services — with a validated contract and generated docs.
skip if — the API is small or has a single client — a lighter framework such as Fastify or Hono, or route handlers next to your web app, costs far less ceremony.
Collaborative editing (local-first): Yjs + Hocuspocus + Tiptap + Postgres
Documents and boards several people edit at once — changes merge automatically, survive going offline, and persist to Postgres.
skip if — edits rarely overlap — last-write-wins through a normal API is simpler, and a collaboration server is one more stateful service to run.
3D web game: Three.js + Rapier + Vite
3D games and explorable worlds that run in a browser tab — a link instead of an install.
skip if — the game needs large worlds, console releases, or an editor-driven workflow for designers — a full engine such as Godot or PlayCanvas fits better.
Desktop app: Electron + React + Vite
Desktop apps that must look and behave the same on every OS — bundled Chromium, a React UI, and Node.js behind a narrow bridge.
skip if — download size or memory use matters more than identical rendering — Tauri uses the OS webview and ships a fraction of the size.
Shopify + Hydrogen + Oxygen
A custom React storefront backed by Shopify commerce, with server-rendered pages and a hosted checkout rather than a cart and order system you build yourself.
skip if — you need to self-host the commerce backend, or a standard Shopify theme already meets the brief — a custom storefront adds development and integration work.
Unity + C#
A code-led game workflow: C# gameplay systems, an editor for scenes and assets, and a rendering pipeline chosen for the hardware you actually ship to.
skip if — an open-source engine license is a hard requirement, or designers need a Blueprint-led Unreal workflow — Unity uses commercial engine terms and this playbook centers C#.
Unreal Engine + Blueprints + C++
A designer-led 3D game workflow: Blueprints for iteration, C++ for shared foundations, and Unreal's rendering and cinematic tools with a measured device budget.
skip if — the game must run in a browser, an open-source engine license is required, or the team wants C# as its main gameplay language.
Native iOS — Swift + SwiftUI
An iOS app with SwiftUI screens and Swift services around Apple SDKs, for teams whose device integration matters more than sharing one UI across platforms.
skip if — Android is the first target, or one shared UI implementation across iOS and Android is a hard requirement.
Native Android — Kotlin + Jetpack Compose
An Android app with Compose screens and Kotlin services around platform APIs, with explicit state ownership, device testing, and task-specific background scheduling.
skip if — iOS is the first target, or one shared UI implementation across iOS and Android is a hard requirement.
Roblox Studio + Luau
Build a multiplayer experience for the Roblox platform with Studio, Luau scripts, and Roblox-hosted services. Choose this when reaching Roblox players matters more than shipping a standalone game.
skip if — you need a standalone store release, an ordinary browser game, offline play, or control over hosting outside Roblox.
GameMaker + GML
An editor-led workflow for 2D games: rooms and objects for composition, GML for reusable gameplay, and platform exports for release.
skip if — 3D is central, an open-source engine is required, or the team wants Lua rather than GML.
Ren'Py + story scripts
A story-first workflow for visual novels: dialogue and branching in Ren'Py scripts, screens for UI, and Python for custom rules.
skip if — real-time action or 3D simulation drives the game, or direct console export is a requirement.
LÖVE + Lua
A code-led 2D workflow with Lua and LÖVE: write the game loop and systems yourself, with rendering, input, audio, and physics APIs supplied by the framework.
skip if — you need a visual scene editor, 3D, or an official browser or console export workflow.
Construct 3 + event sheets
An event-led 2D workflow for teams that want to build gameplay visually in a browser-based editor, with scripting available when needed.
skip if — an open-source engine is required, advanced 3D is central, or a code-first Lua workflow is the goal.
RPG Maker MZ + events
A map-and-event workflow for 2D RPGs: build maps, configure the game database, script encounters through events, and add compatible plugins only when needed.
skip if — the game requires a general-purpose 3D engine, a code-first Lua workflow, or direct console export.
Defold + Lua
An editor-and-Lua workflow for compact cross-platform games: collections and components for composition, Lua scripts for behavior, and a built-in build pipeline.
skip if — an OSI-approved open-source engine license is mandatory, or the team needs a high-fidelity 3D editor workflow.
SvelteKit + server routes
A Svelte-first application workflow for public pages and authenticated features: server loads and form actions keep sensitive work beside the UI.
skip if — the team requires React, or the product needs organization SSO or collaborative editing without first designing those systems.
Vue + Vite + Supabase
A Vue client application with managed authentication and relational data: static frontend delivery, explicit row policies, and server functions for privileged work.
skip if — public pages require server rendering, or complex organization permissions need a dedicated server authorization layer.
Firebase Auth + Firestore + Hosting
A managed backend workflow for client apps with document data, authentication, and live updates; security rules and query costs are part of the design.
skip if — relational joins and reporting drive the data model, strict self-hosting is required, or a document-query cost model is unsuitable.
Babylon.js + TypeScript + Vite
A code-first browser 3D workflow with engine-level scene, camera, material, and asset systems; build and ship a measured web bundle.
skip if — native console distribution is the primary target, or the team requires a visual editor as its main authoring workflow.
PlayCanvas + entities and scripts
A browser-first 3D workflow built around entities, components, assets, and scripts, with an optional hosted editor for visual scene authoring.
skip if — native console distribution is primary, or a required offline visual editor is incompatible with the chosen hosted authoring workflow.
MonoGame + C# + content pipeline
A code-first 2D game workflow for .NET teams that want control of update, draw, and asset processing without an integrated scene editor.
skip if — a visual scene editor is required, browser delivery is the primary target, or a high-fidelity 3D production workflow is central.
raylib + C + explicit game loop
A small C-based 2D game workflow: initialize the library, update game state, draw each frame, and own resource lifetime and packaging.
skip if — a visual scene editor is required, browser delivery is the primary target, or a high-fidelity 3D production workflow is central.
libGDX + Java + platform backends
A Java-based 2D game workflow with shared game code and separate platform launchers; manage assets, lifecycle, and packaging explicitly.
skip if — a visual scene editor is required, browser delivery is the primary target, or a high-fidelity 3D production workflow is central.