# STACK IT FIRST > Pick the architecture an AI agent builds best in. Web, mobile and backend roadmaps, tiered stacks, and installable skills. Every stack links to its AGENTS.md rule on STACK IT FAST (https://stackitfast.com). How it works: each track (web, mobile, backend) asks two short yes/no question sets. Stage 1 picks a tier (MVP, Growth, Scale: how much has to keep working while an agent changes things). Stage 2 picks a profile (where the product's complexity lives). The tier × profile cell is a recommended stack with an agent-fit score. ## Start here - [Principles](https://stackitfirst.com/principles): 9 cross-track rules for codebases agents work well in. - [Skills](https://stackitfirst.com/skills): installable Agent Skills: method skills for any stack, and a stack skill per rule. - [Full text](https://stackitfirst.com/llms-full.txt): every roadmap question, tier and stack in one file. ## Web track Sites and web apps, from a landing page an agent scaffolds in an hour to a multi-tenant product it maintains for years. - [Web hub](https://stackitfirst.com/web) - [Web roadmap](https://stackitfirst.com/web/roadmap): the yes/no questions, with an interactive wizard. - [Web · MVP](https://stackitfirst.com/web/mvp): One person, first users, nothing proven yet. Fewest moving parts, free tiers, one deploy command. - [Web · Growth](https://stackitfirst.com/web/growth): Paying users and a small team. Managed services, real auth and billing, observability you actually read. - [Web · Scale](https://stackitfirst.com/web/scale): Many teams, many regions, or compliance. Explicit service boundaries, typed contracts, and boring infrastructure. Stacks: - [MVP · SEO-driven: Astro + Tailwind + Cloudflare Pages](https://stackitfirst.com/web/mvp/seo.md): Static HTML by default, an island only where you need one, and hosting that stays free until you are famous. (agent fit 5/5) AGENTS.md rule: https://stackitfast.com/rules/astro-static-content - [MVP · SaaS: Next.js + Drizzle + Supabase](https://stackitfirst.com/web/mvp/saas.md): The most-scaffolded SaaS starting point on the internet, which is exactly why an agent builds it well. (agent fit 5/5) AGENTS.md rule: https://stackitfast.com/rules/nextjs-drizzle-supabase - [MVP · Tool: Vite + React + Hono on Cloudflare Workers](https://stackitfirst.com/web/mvp/tool.md): A single-page app and a tiny edge API in one repo, with no framework magic between the agent and the browser. (agent fit 4/5) AGENTS.md rule: https://stackitfast.com/rules/vite-react-hono-edge - [Growth · SEO-driven: Astro SSR + Postgres on Cloudflare](https://stackitfirst.com/web/growth/seo.md): Thousands of dynamic, indexable pages from a database, rendered at the edge, with islands only where users act. (agent fit 5/5) AGENTS.md rule: https://stackitfast.com/rules/astro-tailwind-cloudflare - [Growth · SaaS: Next.js + Prisma + Postgres](https://stackitfirst.com/web/growth/saas.md): The well-trodden SaaS monolith, organised by feature, with a schema the agent and the migration tool both read. (agent fit 5/5) AGENTS.md rule: https://stackitfast.com/rules/nextjs-prisma-postgres - [Growth · Tool: SvelteKit + Drizzle + Postgres](https://stackitfirst.com/web/growth/tool.md): Less code per screen than any React stack, with server loaders and form actions the agent can follow top to bottom. (agent fit 4/5) AGENTS.md rule: https://stackitfast.com/rules/sveltekit-postgres-drizzle - [Scale · SEO-driven: Next.js + Postgres + edge caching](https://stackitfirst.com/web/scale/seo.md): Millions of indexable pages with incremental regeneration, a CDN in front, and a content pipeline separate from the app. (agent fit 4/5) AGENTS.md rule: https://stackitfast.com/rules/nextjs-prisma-postgres - [Scale · SaaS: Next.js front, NestJS + Postgres + Redis back](https://stackitfirst.com/web/scale/saas.md): A typed API the frontend is only one consumer of, with modules, queues and an OpenAPI contract that generates the clients. (agent fit 4/5) AGENTS.md rule: https://stackitfast.com/rules/nestjs-postgres-redis - [Scale · Tool: Go + Postgres + React](https://stackitfirst.com/web/scale/tool.md): A compiled backend with one binary to deploy, a React frontend built to static assets, and a contract generated from the Go handlers. (agent fit 4/5) AGENTS.md rule: https://stackitfast.com/rules/go-postgres-react ## Mobile track iOS and Android apps built on one codebase an agent can hold in its head, with native code only where it earns its place. - [Mobile hub](https://stackitfirst.com/mobile) - [Mobile roadmap](https://stackitfirst.com/mobile/roadmap): the yes/no questions, with an interactive wizard. - [Mobile · MVP](https://stackitfirst.com/mobile/mvp): One person, first users, nothing proven yet. Fewest moving parts, free tiers, one deploy command. - [Mobile · Growth](https://stackitfirst.com/mobile/growth): Paying users and a small team. Managed services, real auth and billing, observability you actually read. - [Mobile · Scale](https://stackitfirst.com/mobile/scale): Many teams, many regions, or compliance. Explicit service boundaries, typed contracts, and boring infrastructure. Stacks: - [MVP · Consumer: Expo + Expo Router + Supabase](https://stackitfirst.com/mobile/mvp/consumer.md): A feed-shaped app with auth, storage and realtime from a hosted backend, and not a line of native code. (agent fit 5/5) AGENTS.md rule: https://stackitfast.com/rules/expo-react-native-tailwind - [MVP · Companion: Expo in the web app's monorepo](https://stackitfirst.com/mobile/mvp/companion.md): Add an Expo app next to the web app, share the schema and API client, and let one change land in both. (agent fit 5/5) AGENTS.md rule: https://stackitfast.com/rules/expo-react-native-tailwind - [MVP · Tool: Expo + SQLite, local-first](https://stackitfirst.com/mobile/mvp/tool.md): One workflow, data on the device, no backend to run, and a sync layer only if you ever need one. (agent fit 5/5) AGENTS.md rule: https://stackitfast.com/rules/expo-sqlite-local-first - [Growth · Consumer: Expo + EAS + your own typed API](https://stackitfirst.com/mobile/growth/consumer.md): The same Expo app, now behind a versioned API you own, with device tests and crash reporting before every build. (agent fit 4/5) AGENTS.md rule: https://stackitfast.com/rules/expo-react-native-tailwind - [Growth · Companion: Expo + shared packages + EAS](https://stackitfirst.com/mobile/growth/companion.md): The monorepo grows up; the mobile app gets its own release pipeline while still sharing every type with the web app. (agent fit 5/5) AGENTS.md rule: https://stackitfast.com/rules/expo-react-native-tailwind - [Growth · Tool: Expo + SQLite + optional sync](https://stackitfirst.com/mobile/growth/tool.md): Local-first stays the default; sync, accounts and paid tiers are added as separate features with their own boundary. (agent fit 4/5) AGENTS.md rule: https://stackitfast.com/rules/expo-sqlite-local-first - [Scale · Consumer: React Native with native modules, or native apps behind one API](https://stackitfirst.com/mobile/scale/consumer.md): Cross-platform where it works, native where it must, and a generated API client so both share one contract. (agent fit 3/5) AGENTS.md rule: https://stackitfast.com/rules/react-native-new-architecture - [Scale · Companion: Expo with custom dev client in the platform monorepo](https://stackitfirst.com/mobile/scale/companion.md): The companion app stays cross-platform, adds the native capabilities enterprise customers ask for, and is owned by a mobile team. (agent fit 4/5) AGENTS.md rule: https://stackitfast.com/rules/expo-react-native-tailwind - [Scale · Tool: Native Swift and Kotlin behind one schema](https://stackitfirst.com/mobile/scale/tool.md): When the tool is the platform integration itself, write it natively per platform and share only the data contract. (agent fit 3/5) AGENTS.md rule: https://stackitfast.com/rules/swiftui-compose-native ## Backend track APIs, data pipelines and internal services built around a contract an agent can diff, validate and test before it changes a handler. - [Backend hub](https://stackitfirst.com/backend) - [Backend roadmap](https://stackitfirst.com/backend/roadmap): the yes/no questions, with an interactive wizard. - [Backend · MVP](https://stackitfirst.com/backend/mvp): One person, first users, nothing proven yet. Fewest moving parts, free tiers, one deploy command. - [Backend · Growth](https://stackitfirst.com/backend/growth): Paying users and a small team. Managed services, real auth and billing, observability you actually read. - [Backend · Scale](https://stackitfirst.com/backend/scale): Many teams, many regions, or compliance. Explicit service boundaries, typed contracts, and boring infrastructure. Stacks: - [MVP · Product API: Bun + Hono + SQLite](https://stackitfirst.com/backend/mvp/api.md): One file to start, a Zod-validated router, and a database that is a file in the repo until it needs to be more. (agent fit 5/5) AGENTS.md rule: https://stackitfast.com/rules/bun-hono-sqlite - [MVP · Data & AI: FastAPI + Pydantic + Postgres](https://stackitfirst.com/backend/mvp/data.md): Python for the libraries, Pydantic for the types, and a single service that runs the jobs and serves their results. (agent fit 5/5) AGENTS.md rule: https://stackitfast.com/rules/fastapi-python-postgres - [MVP · Internal: Hono + SQLite + server-rendered HTML](https://stackitfirst.com/backend/mvp/internal.md): An internal tool is a few tables and a few forms; render them on the server and skip the frontend build entirely. (agent fit 5/5) AGENTS.md rule: https://stackitfast.com/rules/hono-jsx-internal-tools - [Growth · Product API: NestJS + Postgres + Redis](https://stackitfirst.com/backend/growth/api.md): One service with strong module conventions, a queue for side effects, and an OpenAPI document clients are generated from. (agent fit 5/5) AGENTS.md rule: https://stackitfast.com/rules/nestjs-postgres-redis - [Growth · Data & AI: LangGraph + FastAPI + Postgres](https://stackitfirst.com/backend/growth/data.md): Pipelines and agent workflows as explicit graphs, each step typed and retried, served through the same FastAPI you started with. (agent fit 4/5) AGENTS.md rule: https://stackitfast.com/rules/langgraph-python-fastapi - [Growth · Internal: Django + Postgres + Redis](https://stackitfirst.com/backend/growth/internal.md): Batteries included: the admin, the ORM, auth and background tasks are one framework the agent has read more of than any other. (agent fit 5/5) AGENTS.md rule: https://stackitfast.com/rules/django-postgres-redis - [Scale · Product API: Go services + Postgres, Rust where latency is the product](https://stackitfirst.com/backend/scale/api.md): Compiled, typed services with a generated contract each, boring infrastructure, and a compiler as the second reviewer. (agent fit 4/5) AGENTS.md rule: https://stackitfast.com/rules/go-postgres-react - [Scale · Data & AI: ClickHouse + a typed ingestion layer + Postgres](https://stackitfirst.com/backend/scale/data.md): Analytical storage separated from transactional, with typed ingestion and a query layer the product reads through one client. (agent fit 3/5) AGENTS.md rule: https://stackitfast.com/rules/nextjs-clickhouse-analytics - [Scale · Internal: Rails + Postgres + Redis](https://stackitfirst.com/backend/scale/internal.md): The most convention-heavy full-stack framework there is, which at scale is exactly what keeps many teams' internal tools consistent. (agent fit 5/5) AGENTS.md rule: https://stackitfast.com/rules/rails-postgres-redis ## Method skills Install all: `npx skills add k61b/skills --skill agent-ready-repo --skill stack-it-first --skill tests-as-spec --skill vertical-slice-feature --skill agent-fit-review --skill tier-upgrade` - [Agent-ready repo](https://stackitfirst.com/skills/agent-ready-repo): Sets up or audits a repository so coding agents can read, run and verify it - an AGENTS.md with the real commands and conventions, one verify command, typed environment config, and a folder layout by feature. Use when starting a repo, onboarding an agent to an existing codebase, or when asked to "write an AGENTS.md", "make this repo agent-friendly", "set up CLAUDE.md", or "why does the agent keep getting this wrong?". Install: `npx skills add k61b/skills --skill agent-ready-repo` - [Stack It First](https://stackitfirst.com/skills/stack-it-first): Picks the architecture an AI agent will build best in for a new web, mobile or backend project, by walking Stack It First's yes/no roadmap (tier, then profile) and writing the decision down. Use when starting a project, choosing a stack or framework, or asking "what should I build this with?", "which stack for my SaaS/app/API?", "set up a new project", "MVP or scale architecture?". Install: `npx skills add k61b/skills --skill stack-it-first` - [Tests as spec](https://stackitfirst.com/skills/tests-as-spec): Turns a request into a failing test first, then implements until it passes and the full verify command is green - so the test is the spec the agent checks itself against. Use for bug fixes, new behaviour and refactors, or when asked to "fix this bug", "add tests", "make sure it doesn't break", or "TDD this". Install: `npx skills add k61b/skills --skill tests-as-spec` - [Vertical slice feature](https://stackitfirst.com/skills/vertical-slice-feature): Adds a new feature as one vertical slice - its route or screen, logic, data access and tests in a single feature folder - instead of spreading it across controller, service and repository layers. Use when asked to "add a feature", "build the X page/endpoint/screen", "where should this code go?", or when a change would otherwise touch many layer folders. Install: `npx skills add k61b/skills --skill vertical-slice-feature` - [Agent-fit review](https://stackitfirst.com/skills/agent-fit-review): Scores an existing codebase against Stack It First's nine principles for agent-built software (boring tech, types at boundaries, locality, small explicit files, written conventions, tests as spec, explicit over clever, fewer moving parts, encoded workflows) and lists the highest-leverage fixes. Use when asked to "review this repo for AI agents", "why is the agent struggling here?", "how agent-friendly is this codebase?", or before adopting agents on a team. Install: `npx skills add k61b/skills --skill agent-fit-review` - [Tier upgrade](https://stackitfirst.com/skills/tier-upgrade): Checks whether a project has outgrown its tier (MVP, Growth, Scale) using Stack It First's signals, and plans the move to the next tier as small, ordered changes instead of a rewrite. Use when asked "is it time to scale?", "should we split this into services?", "do we need a queue/Kubernetes/microservices?", "the app is getting slow/big", or before a large re-architecture. Install: `npx skills add k61b/skills --skill tier-upgrade` ## Stack skills (one per AGENTS.md rule on the roadmaps) - [Astro SSR + Tailwind CSS + Cloudflare](https://stackitfast.com/rules/astro-tailwind-cloudflare): Install: `npx skills add k61b/skills --skill astro-tailwind-cloudflare` - [Astro Static Site + Content Collections + Tailwind](https://stackitfast.com/rules/astro-static-content): Install: `npx skills add k61b/skills --skill astro-static-content` - [Bun + Hono + SQLite (libSQL & Drizzle ORM)](https://stackitfast.com/rules/bun-hono-sqlite): Install: `npx skills add k61b/skills --skill bun-hono-sqlite` - [Django + PostgreSQL + Redis + Celery](https://stackitfast.com/rules/django-postgres-redis): Install: `npx skills add k61b/skills --skill django-postgres-redis` - [Elixir + Phoenix LiveView + PostgreSQL](https://stackitfast.com/rules/phoenix-liveview-postgres): Install: `npx skills add k61b/skills --skill phoenix-liveview-postgres` - [Expo + SQLite + Drizzle (Local-First Mobile App)](https://stackitfast.com/rules/expo-sqlite-local-first): Install: `npx skills add k61b/skills --skill expo-sqlite-local-first` - [Expo Router + React Native + NativeWind](https://stackitfast.com/rules/expo-react-native-tailwind): Install: `npx skills add k61b/skills --skill expo-react-native-tailwind` - [FastAPI + Jev Decision Service (Python)](https://stackitfast.com/rules/fastapi-jev-decision-service): Install: `npx skills add k61b/skills --skill fastapi-jev-decision-service` - [FastAPI + Python + PostgreSQL (Async SQLAlchemy & Pydantic v2)](https://stackitfast.com/rules/fastapi-python-postgres): Install: `npx skills add k61b/skills --skill fastapi-python-postgres` - [Go + PostgreSQL (pgx & sqlc) + React](https://stackitfast.com/rules/go-postgres-react): Install: `npx skills add k61b/skills --skill go-postgres-react` - [Hono JSX + Bun + SQLite (Server-Rendered Internal Tools)](https://stackitfast.com/rules/hono-jsx-internal-tools): Install: `npx skills add k61b/skills --skill hono-jsx-internal-tools` - [Jev Browser Agent (Playwright + TypeSafe System One)](https://stackitfast.com/rules/jev-browser-agent): Install: `npx skills add k61b/skills --skill jev-browser-agent` - [LangGraph + Python + FastAPI (Agentic AI Workflows)](https://stackitfast.com/rules/langgraph-python-fastapi): Install: `npx skills add k61b/skills --skill langgraph-python-fastapi` - [Laravel + Livewire + PostgreSQL](https://stackitfast.com/rules/laravel-livewire-postgres): Install: `npx skills add k61b/skills --skill laravel-livewire-postgres` - [Leptos Full-Stack Rust (SSR + Hydration on Axum)](https://stackitfast.com/rules/rust-leptos-fullstack): Install: `npx skills add k61b/skills --skill rust-leptos-fullstack` - [Loco + SeaORM + PostgreSQL (Rails-Style Rust SaaS)](https://stackitfast.com/rules/rust-loco-saas): Install: `npx skills add k61b/skills --skill rust-loco-saas` - [Native iOS + Android (SwiftUI + Jetpack Compose, Shared Schema)](https://stackitfast.com/rules/swiftui-compose-native): Install: `npx skills add k61b/skills --skill swiftui-compose-native` - [NestJS + PostgreSQL + Redis + BullMQ](https://stackitfast.com/rules/nestjs-postgres-redis): Install: `npx skills add k61b/skills --skill nestjs-postgres-redis` - [Next.js + ClickHouse + Prisma (Analytics & Observability)](https://stackitfast.com/rules/nextjs-clickhouse-analytics): Install: `npx skills add k61b/skills --skill nextjs-clickhouse-analytics` - [Next.js + Vercel AI SDK + Jev (System One + LLM)](https://stackitfast.com/rules/nextjs-ai-sdk-jev): Install: `npx skills add k61b/skills --skill nextjs-ai-sdk-jev` - [Next.js 16 + Drizzle ORM + Supabase](https://stackitfast.com/rules/nextjs-drizzle-supabase): Install: `npx skills add k61b/skills --skill nextjs-drizzle-supabase` - [Next.js 16 + Prisma ORM + PostgreSQL](https://stackitfast.com/rules/nextjs-prisma-postgres): Install: `npx skills add k61b/skills --skill nextjs-prisma-postgres` - [Node.js + Express + MongoDB](https://stackitfast.com/rules/node-express-mongodb): Install: `npx skills add k61b/skills --skill node-express-mongodb` - [Nuxt 4 + Vue + PostgreSQL](https://stackitfast.com/rules/nuxt-vue-postgres): Install: `npx skills add k61b/skills --skill nuxt-vue-postgres` - [React Native New Architecture + Native Modules (Scale)](https://stackitfast.com/rules/react-native-new-architecture): Install: `npx skills add k61b/skills --skill react-native-new-architecture` - [Ruby on Rails + PostgreSQL + Redis + Sidekiq](https://stackitfast.com/rules/rails-postgres-redis): Install: `npx skills add k61b/skills --skill rails-postgres-redis` - [Rust + Axum + htmx + Askama (Server-Rendered Web App)](https://stackitfast.com/rules/rust-axum-htmx-askama): Install: `npx skills add k61b/skills --skill rust-axum-htmx-askama` - [Rust + Axum + PostgreSQL API (sqlx & Tokio)](https://stackitfast.com/rules/rust-axum-postgres): Install: `npx skills add k61b/skills --skill rust-axum-postgres` - [SvelteKit + PostgreSQL + Drizzle ORM](https://stackitfast.com/rules/sveltekit-postgres-drizzle): Install: `npx skills add k61b/skills --skill sveltekit-postgres-drizzle` - [Tauri 2 + React + Vite (Rust Desktop App)](https://stackitfast.com/rules/tauri-react-desktop): Install: `npx skills add k61b/skills --skill tauri-react-desktop` - [Vite + React SPA + Hono (Edge API)](https://stackitfast.com/rules/vite-react-hono-edge): Install: `npx skills add k61b/skills --skill vite-react-hono-edge` ## Sister site - [STACK IT FAST](https://stackitfast.com/llms.txt): AGENTS.md rules, Cursor rules and SKILL.md files for 100+ production stacks.