Astro ships zero JS by default, which pairs perfectly with a plain HTML form posting to FormDrop.
---
const key = import.meta.env.PUBLIC_FORMDROP_KEY;
---
<form action="https://forms.elimbi.com/submit" method="POST">
<input type="hidden" name="access_key" value={key} />
<input type="hidden" name="redirect" value={new URL("/thanks", Astro.site).href} />
<input name="name" required />
<input name="email" type="email" required />
<textarea name="message" required></textarea>
<input type="checkbox" name="botcheck" style="display:none" />
<button>Send</button>
</form>Set site in astro.config.mjs and create src/pages/thanks.astro. Works with fully static output.
access_key — your key (required).email — if present, FormDrop sets it as Reply-To so you can answer directly.subject — optional email subject.redirect — optional thank-you page URL for plain HTML posts.botcheck — hidden honeypot; if a bot fills it, the submission is silently dropped.Every other field is included in the email and saved in your dashboard log. Send Accept: application/json to get a JSON reply instead of a redirect.
Yes: 250 submissions/month and unlimited forms on the free plan. Pro is $9/mo for 10,000/month.
Not currently — FormDrop handles text fields. Link to a file share instead.
The plain HTML form version does; the fetch version needs JS.