Add a subscribe form to a Jekyll site

Your site can stay static. No API secrets belong in the repo. The include posts to this service with the public site key, Turnstile, a honeypot, and a consent checkbox.

1. Copy the include

Copy jekyll/_includes/subscribe.html from this repo into the site’s _includes/ folder.

2. Configure _config.yml

mailer:
  endpoint: https://mail.wevibing.com
  site_key: pk_live_YOUR_KEY
  turnstile_key: YOUR_TURNSTILE_SITE_KEY

Replace the site key with the public key from Admin → API keys, and use your Cloudflare Turnstile site key.

3. Drop the form on a page

{% include subscribe.html list="newsletter" %}

Use a list slug from Admin → Lists, for example newsletter.

4. Pages the form redirects to

  • /check-your-inbox/ after a successful submit (JavaScript off uses a 303)
  • /subscribed/ after the reader confirms
  • /unsubscribed/ after one-click or preference-center unsubscribe
  • /subscribe-error/ if origin or Turnstile checks fail

5. Optional JavaScript enhancement

The include works with JavaScript disabled. To keep people on the page, add:

<script src="https://mail.wevibing.com/embed.js" async></script>