PreLaunch includes a powerful waitlist collection feature that helps you gather email addresses from potential users before your product officially launches, allowing you to build an initial user base. This feature offers:
The waitlist data is stored in a waitlist table with the following structure:
Copy
create table if not exists public.waitlist ( id uuid not null default uuid_generate_v4(), email text not null unique, locale text not null default 'en', source text null, created_at timestamp with time zone not null default now(), constraint waitlist_pkey primary key (id) );
You can export user data through the Supabase Console, or use the getWaitlistUsers function provided in libs/supabase/waitlist.ts to create an admin API for data retrieval.
How do I modify the waitlist styling?
You can customize the styling by editing the TypeformWaitlist.tsx component, or by using Tailwind CSS classes to adjust the appearance.
Can I add additional fields to the waitlist form?
Yes, you can customize the TypeformWaitlist component to include additional fields. You would also need to update the Supabase table schema and the API endpoint to handle the additional fields.
Here’s a complete example of a waitlist landing page:
Copy
// app/page.tsximport Hero from '@/components/landing/Hero';import Features from '@/components/landing/Features';import FAQ from '@/components/landing/FAQ';import TypeformWaitlist from '@/components/landing/TypeformWaitlist';export default function Home() { return ( <main> <Hero /> <Features /> <FAQ /> {/* You can also add the waitlist form in a dedicated section */} <section className="container mx-auto py-24"> <div className="max-w-md mx-auto"> <TypeformWaitlist /> </div> </section> </main> );}