Skip to content

Wire up the contact form #2

Description

@davidtaing

The contact form at /contact renders and validates, but has no action — submitting it does nothing. There is no backend in this repo.

Until it is wired, the working paths on that page are the mailto link and the booking link.

Where: src/app/contact/page.tsx — the form is marked with a comment at the <form> element.

Fields: name, email, phone, message (all required).

What needs deciding

  • Route handler or form service? A Next.js route handler keeps it in-repo but needs somewhere to send the mail from (Resend, Postmark, SES) and a secret to hold it. A hosted form service (Formspree, Web3Forms) needs no backend but adds a third party to the stack.
  • Where submissions land. Currently info@code.sydney, until Bluehex has its own address.
  • Spam handling. A public form with no protection will get scraped. Turnstile or a honeypot.

Acceptance

  • Submitting delivers the message somewhere a human reads.
  • The form reports success and failure to the person filling it in, rather than silently doing nothing.
  • No secret is required at build time — next build must keep working without it, including on preview deployments.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions