/* Contact — form POSTs to contact.php which mails hello@sonalstudio.in */ function Contact() { const [status, setStatus] = React.useState("idle"); // idle | sending | sent | error async function handleSubmit(e) { e.preventDefault(); setStatus("sending"); try { const data = new FormData(e.target); const res = await fetch("contact.php", { method: "POST", body: data }); if (res.ok) { const json = await res.json().catch(() => ({})); setStatus(json.success === false ? "error" : "sent"); } else { setStatus("error"); } } catch { setStatus("error"); } } return (
Get in touch

hello!
Tell us about your business.

Send us a quick note. We'll reply within one working day, schedule a 30-minute chat, and send a tailored quote within the week. No obligation.

  • hello@sonalstudio.in
  • Based in Ireland · serving the EU
  • We reply within one working day
{status === "sent" ? (
thank you!

We've got your note. You'll hear back from us within a working day - usually sooner.

) : ( <> {status === "error" && (
Something went wrong — please email us directly at{" "} hello@sonalstudio.in.
)}
)}
); } window.Contact = Contact;