From great_cto
Pins default technology stack for SMB Product-Builder products covering framework, ORM/DB, auth, UI, payments, email, SMS, files, jobs, testing, hosting, and observability.
How this skill is triggered — by the user, by Claude, or both
Slash command
/great_cto:stack-baselineWhen to use
Apply when: - architect writes the Components / stack section of ARCH-{slug}.md - app-scaffolder stands up a new product skeleton - auth-engineer or senior-dev would otherwise pick a library/provider ad hoc Do NOT override a choice already pinned in PROJECT.md (an existing project's stack wins).
docs/architecture/**docs/plans/**.great_cto/**This skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Every SMB product builds on the SAME proven stack unless there's a concrete reason not to.
Every SMB product builds on the SAME proven stack unless there's a concrete reason not to. Re-deciding framework/ORM/auth/host per build wastes the first hour of every project and fragments the codebase across products. This is the default; deviate only with a written reason in ARCH.
| Layer | Default | Sanctioned alternative | Notes |
|---|---|---|---|
| Framework | Next.js (App Router, TS) | Remix | Server actions + RSC; one repo front+back |
| UI | Tailwind + shadcn/ui | — | matches the site; design-advisor tokens map to it |
| DB | Postgres | — | the only DB; integer cents, tz-aware timestamps |
| ORM / migrations | Drizzle | Prisma | typed schema + SQL migrations; migration-ready-schema applies |
| Auth | Auth.js (NextAuth v5) | Clerk (fast path, per-MAU cost) | owned by auth-engineer; session + RBAC + multi-tenant |
| Payments | Stripe (+ Connect) | — | owned by subscription-billing-engineer / integrations-engineer |
| Resend | Postmark | transactional; SPF/DKIM/DMARC via lifecycle-messaging | |
| SMS | Twilio (Messaging Service) | Telnyx | 10DLC; consent via lifecycle-messaging |
| File storage | Cloudflare R2 / S3 | — | private buckets, presigned URLs |
| Background jobs | Inngest | a Postgres-backed queue | reminders, syncs, dunning |
| Testing | Vitest (unit) + Playwright (e2e) | — | senior-dev unit; e2e-test-engineer browser |
| Hosting | Vercel | Cloudflare Pages/Workers | Next.js-native; preview per PR |
| DB host | Neon (serverless PG) | Supabase | branchable; env-wired by infra-provisioner |
| Observability | Sentry | — | errors + traces on the deployed product |
| Analytics | privacy-light (Plausible) | — | no heavy 3rd-party trackers |
.great_cto/PROJECT.md at scaffold time (stack: line) so every later
agent reads it instead of guessing — and an existing PROJECT.md's stack always wins.migration-ready-schema).When applied, write the stack into ARCH's Components section and PROJECT.md:
## Stack (baseline)
framework: Next.js (App Router, TS) · UI: Tailwind + shadcn
db: Postgres (Neon) · orm: Drizzle · auth: Auth.js (→ auth-engineer)
payments: Stripe · email: Resend · sms: Twilio · files: R2 · jobs: Inngest
test: Vitest + Playwright · host: Vercel · obs: Sentry
deviations: <none | reason>
npx claudepluginhub avelikiy/great_ctoRecommends full technology stacks for new projects based on requirements, team expertise, and constraints like scale, performance, budget, and time-to-market.
Opinionated tech stack recommendations and settled library references. Runs parallel researcher agents to compare candidates and emit a stack report + ADRs for greenfield projects, or routes direct references for coding with settled defaults.
Establishes Gaia's default full-stack baseline with React, TypeScript, Redux Toolkit, Tailwind, shadcn/ui frontend and .NET, EF Core, PostgreSQL backend. For new apps, unspecified stacks, or standardization.