Ship MVPs fast: validation frameworks, scoping, build-vs-buy decisions, 3-week sprint plans, launch checklists, and post-launch playbooks.
Minimum validation checklist (do ALL before writing code):
Kill signals: <50 waitlist signups after 500 visits, zero users willing to pay, problem already solved well by incumbents.
| Priority | Definition | Example |
|---|---|---|
| Must | Product is useless without it | Core value proposition, auth, data persistence |
| Should | Expected but can workaround | Email notifications, search, mobile responsive |
| Could | Nice to have, adds polish | Dark mode, export, keyboard shortcuts |
| Won't | Explicitly cut for v1 | Admin dashboard, API, integrations, i18n |
The ONE thing test: Complete this sentence: "Users will choose this over alternatives because ___." If your MVP doesn't nail that sentence, re-scope.
| Feature | Recommendation | Service | Build time if DIY |
|---|---|---|---|
| Auth | Buy | Clerk, Supabase Auth, Auth0 | 2-5 days |
| Payments | Buy | Stripe, Lemon Squeezy | 3-7 days |
| Email (transactional) | Buy | Resend, Postmark | 1-2 days |
| Email (marketing) | Buy | Loops, ConvertKit | 2-3 days |
| File uploads | Buy | UploadThing, S3+presigned | 1-3 days |
| Search | Buy (until >100k records) | Algolia, Meilisearch | 3-5 days |
| Realtime | Buy | Ably, Pusher, Supabase Realtime | 2-4 days |
| Analytics | Buy | PostHog, Plausible | 1-2 days |
| CMS | Buy | Sanity, Payload | 3-7 days |
| Core feature | Build | — | That's your product |
Rule: If it's not your core differentiator, use a service. Period.
| Project type | Frontend | Backend | DB | Deploy |
|---|---|---|---|---|
| SaaS | Next.js / Remix | Server Actions / tRPC | Postgres (Neon) | Vercel |
| Marketplace | Next.js | API routes + queue | Postgres + Redis | Railway |
| Dev tool / API | Docs site (Mintlify) | Hono / Fastify | Postgres or SQLite | Fly.io |
| Content site | Astro / Next.js | Headless CMS | CMS-managed | Vercel / Cloudflare |
| Mobile-first | React Native / Expo | Supabase | Supabase Postgres | EAS |
Don't overthink this. Pick what you know. An MVP in a familiar stack ships 3x faster than one in the "right" stack.
Hour 0-6: Monitor error tracking, watch for 5xx spikes, be in support channels. Hour 6-24: Share on social, post on relevant communities (HN, Reddit, IndieHackers, Product Hunt). Hour 24-48: Follow up with every user who signed up. Ask one question: "What almost stopped you from signing up?"
| Metric | Target | Tool |
|---|---|---|
| Signups | Track daily | Analytics |
| Activation (core action done) | >30% of signups | PostHog funnel |
| Day-1 retention | >20% | PostHog cohort |
| NPS / feedback sentiment | Qualitative | Manual outreach |
| Error rate | <1% of requests | Sentry |
Iterate if: Users activate but churn (fix retention), users request specific features (roadmap signal), conversion funnel has clear drop-off (optimize). Pivot if: <5% activation after 2 weeks, feedback is consistently "I don't need this", you can't describe the user who loves it.
| Don't | Do instead |
|---|---|
| Build auth from scratch | Clerk/Supabase Auth (30 min) |
| Premature optimization | Ship, measure, then optimize hot paths |
| Over-engineer state management | Server Components + URL state + useState covers 90% |
| Manual deployments | Git push → auto deploy (Vercel, Railway) |
| Skip analytics | You're flying blind — add PostHog day 1 |
| Chase perfection | 80% quality shipped beats 100% quality in dev |
| Build admin dashboards | Use your DB GUI (Prisma Studio, Supabase dashboard) |
| Custom design system | shadcn/ui + Tailwind — move on |