Sales funnel, lead form and booking
Sales funnel — ad to opt-in to sales video to a qualified booking, with a double-booking rule (skeleton)
The wiring for a four-step sales funnel — an ad, an opt-in page, a sales video and a booked call — and what each step still needs. The lead form hands every lead to your app’s own contact store, and marketing email needs a separate, explicit yes. The booking rule refuses a double booking and any time given without a time zone. A skeleton: no page builder, no payments and no calendar sync.
A feature of the Playground
This is a feature of the Vibe Coder Playground. It runs inside the Playground, with its audit record and its caveats beside it.
The mistake it removes
Three, all quiet. A booking rule that compares times without a zone books the wrong hour, and one that accepts a zero-length or reversed slot lets any number of bookings through, so both are refused. A lead form that sends its data nowhere thanks every visitor and keeps nothing, so the recorder will not start without the host's contact store. And a lead is not permission to email: marketing consent is a separate explicit yes, stamped with the privacy text the visitor saw, and the nurture check refuses everyone without it.
What lands in your project
node
- node/booking.js
- node/funnel.js
- node/lead-form.js
Pure functions over injected data — no store is assumed and no package is imported. booking.js: checkBooking(existing, slot) is the conflict rule, requestBooking({existing, slot, bant}) qualifies first. funnel.js: FUNNEL_STEPS, nextStep, funnelProblems. lead-form.js: OPTIN_FIELDS / BOOKING_FIELDS and createLeadRecorder({saveLead, policyVersion}) are ui-form's fields and onSubmit.
What you supply
- saveLead — your app's function that stores a lead — the CRM contacts store's addContact takes the same name, email, company and note; the recorder refuses to start without it
- policyVersion — the version of the privacy text shown beside the marketing-consent checkbox, stamped on every consent record
- resource — the calendar a booking is made on; two bookings conflict only on the same resource
Get it
Download the Playground See pricing
A feature of the Vibe Coder Playground.
Questions
- Is Sales funnel, lead form and booking audited?
- No. No full audit has been run against this block yet, which is not the same as a pass. What is verified about it is listed on this page, and what is not is listed beside it.
- What do I still have to do myself?
- Read the block’s own caveats before you ship it. They install alongside the code.
- How do I get this?
- It is a feature of the Vibe Coder Playground. Download the Playground, and see the pricing page for what each plan includes.
All Playground features · Free code blocks · Learn to build from zero · The coding guide