GoForms

Send form data from any website directly to your inbox. No backend required. Self-hosted, secure, and open source.

contact-form.html
<form method="POST"> action="https://goforms.dev/forms/your-form-id">
<input type="email" name="email" />
<textarea name="message"></textarea>
<button type="submit">Send</button>
</form>

Everything you need

Simple, secure, and reliable form handling

Simple Setup

Start receiving form submissions in minutes. No complex configuration required.

Spam Protection

Built-in reCAPTCHA integration keeps unwanted submissions away.

Secure & Private

All form data is encrypted and stored securely. Self-hosted for complete control.

Get started in minutes

Choose your deployment method

Docker

docker run -d \
    --name goforms \
    -p 3000:3000 \
    -v $(pwd)/config.yaml:/app/config.yaml \
    goforms/goforms:latest
            

Configuration

forms:
  - id: "947cb518-bb59-4761-8038-51fb00d28859"
    name: Contact form
    subject: New contact from goforms.dev
    sender:
      email: noreply@goforms.dev
      name: Sebastiaan Van Hoecke
    recipients:
    - email: sebastiaan@goforms.dev
      name: Sebastiaan Van Hoecke

HTML Form Example

<form action="http://localhost:3000/forms/947cb518-bb59-4761-8038-51fb00d28859"
  method="POST">
  <input type="email" name="email" placeholder="Your email" required />
  <textarea name="content" placeholder="Your message" required></textarea>
  <button type="submit">Send</button>
</form>