Full-stack2025
Lead Capture Suite
A campaign-ready landing kit with a typed lead pipeline.
lead-capture.ts
export const project = {
type: "fullstack",
stack: [
"Next.js",
"TypeScript",
"Tailwind",
"Go",
"PostgreSQL",
"Resend",
"Vercel",
"GitHub Actions",
],
shipped: true,
};- Năm
- 2025
- Vai trò
- Solo engineer
- Thời gian
- 3 months
Kiến trúc
01
Frontend
- Next.js landing kit
- Tailwind theme tokens
- Form composer with Zod
02
Lead service
- Go intake API
- Per-campaign rate limits
- Spam scoring + honeypot
03
Pipeline
- Postgres normalized leads
- Resend transactional email
- Slack notifications
Điểm nhấn 01
<1d
from brief to live campaign
Điểm nhấn 02
0
engineering time after launch
Điểm nhấn 03
12
campaigns shipped on this stack
Ghi chú kỹ thuật
The pitch
Marketing teams always need one more landing page. Engineering always has more important things to do. The Lead Capture Suite is my answer to that loop — a Next.js landing kit and a Go intake service that together let marketing ship a campaign in an afternoon.
Architecture
```ts
// frontend (Next.js)
const result = await submitLead({ campaign, payload });
// edge ("Lead service" — Go)
POST /v1/leads
→ validate + score (spam / honeypot / rate-limit)
→ write to Postgres
→ notify Slack + email
// downstream
Postgres → CRM sync (cron) → Resend (transactional)
```
What's in the kit
- Pre-built sections (hero, social proof, feature grid, FAQ, footer) that all consume the same theme tokens, so a rebrand is a one-file diff.
- A typed form composer driven by Zod schemas. Marketing picks the fields; the validation, the error states and the analytics come along for the ride.
- A campaign-aware backend that rate-limits per campaign and dedupes obvious bots before anything hits the database.
Why I'm proud of it
Twelve campaigns later, I haven't been paged once. That's the whole point.