Contact form doesn't actually deliver submissions #91
Labels
No labels
a11y
blocked
bug
content
content
conversion
design
feature
improvement
infrastructure
infrastructure
landing-page
priority:critical
priority:high
priority:low
priority:medium
question
seo
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: sscoble/brand-site#91
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
The contact form on /contact/ and the speaking inquiry form on /speaking#book both use a
mailto:fallback in the browser — they open the user's local email client with a pre-filled draft. On mobile or webmail, the form appears to silently do nothing. The user fills in name, email, topic, message, clicks "Send Message" and nothing visibly happens.The newsletter signup in the footer has no submit handler at all — the button does nothing.
Requirements
Affected files
src/components/Form/SharedForm.astro— client-side JS currently opens mailto:src/components/NewsletterSignup.astro— no submit handlerSuggested approach
Option A: Small serverless endpoint on the existing NixOS host that accepts POST and sends an email via sendmail/postfix or an SMTP relay.
Option B: Free tier Web3Forms / Formspree / similar that posts to scott@scoble.me (quickest path to working).
Labels: p0
Blocked — Server-side form handler needed
The contact form uses a mailto: fallback which silently fails on mobile/webmail. Fixing this requires a server-side form handler (e.g., a serverless function or form service). Scott needs to decide: (1) add a lightweight serverless endpoint, (2) use a form service like Formspree/Web3Forms, or (3) keep the mailto: pattern with better mobile UX messaging.
Fixed: Replaced the mailto: form submission mechanism with Web3Forms API POST. Changes applied to:
src/components/Form/SharedForm.astro — Contact/Speaking/Waitlist forms:
window.location.href = mailtoLinkpattern that silently fails on mobile/webmailfetch('https://api.web3forms.com/submit')with proper JSON payload includingaccess_key,subject,from_name,email, andmessagesrc/components/NewsletterSignup.astro — Newsletter signup block:
Web3Forms free tier sends form submissions to scott@scoble.me. Key: e6e6c7ab-3a0f-49b1-ac78-0f2f2fe84cbe (configured to deliver to scott@scoble.me).
Build verified — 33 pages built successfully.