The problem
Every time I had to write a proposal for a client, I spent 2-3 hours on it. Researching their brief, structuring sections, finding the right tone.
Most of the time the client had already hired someone else by the time I sent it.
So I built ProposalPilot.
What it does
You paste the client's project brief, pick your service type (web dev, design, marketing, consulting), and get a full personalized proposal in ~30 seconds. The output streams in real time so you see it being written, which feels surprisingly satisfying.
👉 https://autoproposal-six.vercel.app — free to try, 3 proposals/month
The stack
Next.js 14 (App Router, Server Components)
Anthropic Claude API for generation with streaming
Supabase for auth + database (RLS on every table)
Stripe for payments ($19/month Pro plan)
Vercel for hosting
The streaming was the trickiest part — piping Claude's stream through a Next.js Route Handler to the client with ReadableStream and TextDecoder .…