← PluginsAvailable
Contact Forms
Contact forms and a submissions inbox, built into EmDash.
Build single-page forms in the EmDash admin, review or export submissions, and send notification emails. Embed registry forms in posts and pages with the optional native companion.
Features
Form builder
Create and edit forms in the EmDash admin.
Embed anywhere
Insert a form block in any post or page.
Submissions inbox
Read, archive, delete and export to CSV.
Email notifications
Sent through your site's email provider.
Spam protection
A honeypot field and rate limiting on every form.
Retention
Old submissions are cleaned up on a schedule.
Contact Forms gives EmDash a form builder and an inbox. Create a form in the admin, drop it into any post or page, and read, archive, export or delete what people send. Notifications go out through your site's email provider.
Built-in spam protection
Every form has a honeypot field and a per-visitor rate limit, so most junk never reaches your inbox.
Keep only what you need
Set a retention period and old submissions are deleted automatically each week. Export to CSV whenever you need a copy.
Install
Install Contact Forms from the EmDash registry, then add the website companion:
pnpm add @masonjames/emdash-contact-forms@^0.2.0
// astro.config.mjs
import { defineConfig } from "astro/config";
import emdash from "emdash/astro";
import { contactFormsEmbedPlugin } from "@masonjames/emdash-contact-forms/registry-embed";
export default defineConfig({
integrations: [emdash({ plugins: [contactFormsEmbedPlugin()] })],
});
Build and deploy the site. Insert a Contact Form block and use the form ID from Plugins > Forms.Questions
Do I need an email provider?
Only for notifications. Submissions are always saved in the inbox; to email them, install an email provider plugin such as EmDash SMTP.
Is there a sandboxed version?
Yes. Contact Forms 0.2.0 is live in the EmDash plugin registry with a sandboxed backend and Block Kit admin. Website rendering requires the optional native companion configured above. Existing native Contact Forms data is not automatically copied into registry storage.