Scaffold
Reference

Stack in practice

This snapshot records services, packages, and skills used across active repos. Stack decisions defines the new-project standard.

Services

Counts are approximate repo footprints; use them to identify defaults, not as adoption metrics.

CategoryDefaultAlso in use
HostingVercelDocker for containerised services; Cloudflare Workers occasionally
DatabaseNeon (Postgres) + Drizzle ORMUpstash Redis for caching/rate-limits; Turso once
LLM accessOpenRouter, with the model for each job from @howells/aia direct @ai-sdk/* provider for a capability OpenRouter lacks
EmbeddingsVoyage—
Search / scrapingExa + Firecrawl (usually paired)Tavily, Bright Data, ScrapingBee
Agent browsingKernelthe agent-browser skill for local automation
Media / voicefal.ai (image/video), @howells/motif in front of itElevenLabs for voice
Object storageCloudflare R2, via the S3-compatible SDKVercel Blob occasionally
AuthWorkOS for serious product appsClerk in a smaller set of lighter or existing apps
LLM observabilityLangfuse—
Product analyticsPostHogVercel Analytics in a small number of existing sites
Data warehouseSnowflake (where the data lives there)—

Two prospective defaults are not yet widespread:

  • Errors: Sentry.
  • Transactional email: Resend.

A note on LLM access: a September 2026 survey found that nearly every active repo routes through OpenRouter, by six different mechanisms, while @howells/ai still defaulted to Vercel AI Gateway from an April 2026 benchmark. OpenRouter is now the only route, and @howells/ai is a lookup of the model for each job.

Models and media

Do not duplicate exact model rosters here. Language and embedding choices live in @howells/ai; media-generation and transformation choices live in howells/motif. Product code asks those packages for a job or task instead of scattering fast-decaying model IDs through routes, prompts, and documentation.

New AI work starts on AI SDK 7. Existing AI SDK 6 products migrate deliberately because the provider and tool APIs are a compatibility-significant change, not a fleet-wide cosmetic bump.

Packages

The dependency baseline is consistent: the same ~15 packages carry most repos. Authoritative pinned versions live in Stack Decisions and Default Dependencies; this is just the measured shape.

  • Tooling spine: typescript, @howells/lint, @howells/typescript-config, turbo, lint-staged, vitest, tsx, @howells/husky, and @howells/envy where runtime configuration exists.
  • UI repos: react / react-dom, tailwindcss (+ @tailwindcss/postcss), next, zod, lucide-react, and motion (not framer-motion in current first-party work).
  • Common UI: cn, class-variance-authority, @base-ui/react / @radix-ui/*, @tanstack/react-query, nuqs, next-themes, sonner, cmdk, and the @patternmode/* kit (stacksheet, scrollframe, swatch, aperto).
  • Data & AI: drizzle-orm (+ drizzle-kit), @neondatabase/serverless, ai (Vercel AI SDK), @howells/ai, @mastra/* when orchestration is needed, @modelcontextprotocol/sdk for MCP.
  • Testing: vitest for unit/integration, @playwright/test for E2E, @testing-library/*.

tRPC is deliberately rare; most repos favour server actions, the AI SDK, or plain typed fetch over a tRPC layer.

Skills and tools

Measured from a month of actual invocations (both slash commands I type and skills invoked mid-task), not from repo mentions. Skills are installed globally and invoked on demand, never vendored into repos, so a repo grep badly undercounts them.

Claude Code and Codex handle the development loop directly. Matt Pocock's skills provide general methods; the Howells collection remains specialist.

Most-used specialists, roughly in order of how often I reach for them:

  • chiaroscuro: UI design direction and Tailwind v4 systems. My most-invoked individual skill by a wide margin; design direction is central to how I work, not a side concern.
  • agent-browser and fieldtest: browsing/dogfooding and evidence-backed rendered QA.
  • foreman: foreman-mode delegation, where the main loop plans and reviews while subagents write the code.
  • grill-with-docs / domain-modeling: Matt Pocock's skills for pinning the ubiquitous language before building.
  • marginalia: concise JSDoc on public APIs.
  • mastraudit: auditing Mastra implementations against current guidance.
  • research / firecrawl-deep-research: primary-source repository research and broader web research.
  • On-demand: componentize and simplify (structure); nomen (naming); deslop (prose); surface (agent-readability).

External skills I lean on: Matt Pocock's engineering set (domain-modeling, grill-with-docs, improve-codebase-architecture, and the writing skills), the superpowers marketplace, and Vercel Labs' agent-browser. See Development skills for the current installed routing map.

On this page