Next.js Landing Page + Waitlist Starter — Tailwind, SQLite/Postgres, CSV Export
Launch a polished "coming soon" page with a working, spam-resistant waitlist and one-click CSV export, ready for Vercel.
Validate your idea before you build it. This starter gives you a clean, responsive landing page and a production-ready waitlist backend: validated signups, duplicate protection, bot and rate-limit defenses, and a protected CSV export you can open in Sheets or Excel.
Run it locally with zero setup on SQLite. When you deploy, set one env var (DATABASE_URL) to switch to Postgres (Neon, Supabase or Vercel Postgres). All marketing copy lives in a single file, so you can rebrand it in minutes.
Features:
- Next.js 14 App Router, TypeScript and Tailwind CSS: a responsive dark landing page with hero, features and FAQ
- Waitlist form with Zod validation (client and server), email normalization, and a honeypot bot trap
- Storage adapter for SQLite (local) or Postgres (production), with the table created automatically
- Per-IP rate limiting with Retry-After headers
- Duplicate signups handled quietly, so the form never reveals who is already on the list
- Token-protected admin CSV export (timing-safe check, guards against spreadsheet formula injection)
- One-file copy editing (lib/site.ts)
- 13 tests (Vitest); type-checks and builds clean with next build
What you get:
- Full source code (Next.js 14, React 18, Tailwind 3, Zod, better-sqlite3, pg)
- Test suite and .env.example
- A detailed README covering setup, env vars, API reference, step-by-step Vercel deploy with Postgres, and customization (extra fields, confirmation emails, Redis rate limiting, other databases)
- MIT license, for unlimited personal and commercial projects
- Instant download (.zip)