MuxForms on Astro is embed.js in src/layouts or a small client:load island that calls window.MuxForms.mount after navigation. Allow your production Astro origin (Cloudflare, Netlify, or Vercel URL).
Docs
Astro pages stay mostly static—drop the embed in a layout and let MuxForms handle POST.
| Piece | Location |
|---|---|
| Script | Base layout <head> or before </body> |
| Mount target | Page or Contact.astro |
| Client nav | mount() in island if needed |
| Allowlist | Deployed site origin |
--- // src/pages/contact.astro import Base from "../layouts/Base.astro"; --- <Base title="Contact"> <h1>Contact</h1> <div data-form-id="FORM_UUID"></div> </Base>
<!-- src/layouts/Base.astro (excerpt) --> <body> <slot /> <script src="https://www.muxforms.com/embed.js" defer></script> </body>
Blog on Astro, app on Expo—same MuxForms form id optional.
Upgrade to Pro