Blog

Notes on forms,
without the fluff.

Practical write-ups on collecting submissions, filtering spam, and publishing forms — no backend required.

WordPress Contact Form Without a Plugin: What Survives the Save

October 16, 2026

WordPress Contact Form Without a Plugin: What Survives the Save

Paste a plain HTML contact form into a WordPress page and reload it — for a lot of accounts, part of it is just gone. Exactly which tags survive, which don't, and why, straight from WordPress's own filtering source.

Read more
Do You Need a Drag-and-Drop Page Builder? Seven Questions First

October 12, 2026

Do You Need a Drag-and-Drop Page Builder? Seven Questions First

"Drag and drop" is the default assumption for a page builder. Seven concrete questions worth answering honestly first — what this one does without a canvas, and the one real case where it isn't the right fit.

Read more
Landing Page Creator: Four Real Pages From One Tool

October 8, 2026

Landing Page Creator: Four Real Pages From One Tool

The real test of a landing page creator isn't whether it has templates — it's whether unrelated pages built in it actually look like different things. Four worked examples, exact starting content included.

Read more
Page Builder Templates and Elements: Four Words, Four Different Jobs

October 8, 2026

Page Builder Templates and Elements: Four Words, Four Different Jobs

"Template" means a different thing in nearly every page builder's marketing. Here's exactly what it means in this one, and the three other layers most page-builder copy quietly lumps into the same word.

Read more
Angular Contact Form: Two Official Ways, and the One That Isn't

October 5, 2026

Angular Contact Form: Two Official Ways, and the One That Isn't

Angular ships two different ways to build a form, and both lead to the same HttpClient gotcha before a contact form reaches NBForms. A third option skips the gotcha entirely.

Read more
Remix Contact Form: The Case Against Remix's Own Form Component

October 4, 2026

Remix Contact Form: The Case Against Remix's Own Form Component

The obvious choice for a Remix contact form is the framework's own <Form> component. The docs themselves explain why that's built for a different job than posting to an external endpoint.

Read more
Gatsby Contact Form: Why Netlify's Form Detection Misses It

September 20, 2026

Gatsby Contact Form: Why Netlify's Form Detection Misses It

Netlify Forms looks like the free, zero-setup answer on a Gatsby site — until Netlify's own docs explain exactly which forms its build system can't see, and what the workaround costs to keep working.

Read more
File Upload Form Backend: 7 Mistakes That Lose Submitted Files

September 6, 2026

File Upload Form Backend: 7 Mistakes That Lose Submitted Files

Adding a file field to a form backend looks identical to adding a text field — until quota, encoding, or naming assumptions quietly drop the attachment. Seven specific mistakes and their fixes.

Read more
Free Form Backend Plans Compared: NBForms, Formspree, Web3Forms, Basin

September 6, 2026

Free Form Backend Plans Compared: NBForms, Formspree, Web3Forms, Basin

Every form backend advertises a free plan, and each one means something different — submission caps from 50 to 250/month, file uploads on some, 30-day retention on others. Compared directly.

Read more
Form Backend Integrations: Slack, Google Sheets, Zapier, and What They Actually Cost to Set Up

September 1, 2026

Form Backend Integrations: Slack, Google Sheets, Zapier, and What They Actually Cost to Set Up

Six integrations, one submission each fires to independently. Here's exactly what each one needs, and the two-line reveal that three of them are the same integration wearing different names.

Read more
Framer Contact Form With No Backend — and a Redirect Setting to Leave Alone

August 31, 2026

Framer Contact Form With No Backend — and a Redirect Setting to Leave Alone

Framer's Form component already speaks webhook and JSON. Here's exactly how to point one at NBForms, and one settings-page checkbox that will quietly break every submission if it's checked.

Read more
Webflow Form Backend: What the Custom Action Setting Actually Changes

August 30, 2026

Webflow Form Backend: What the Custom Action Setting Actually Changes

Webflow's Form block already has a setting for this — no embed, no export required. Here's exactly what Custom Action does, and the one thing its own field picker can't add.

Read more
Nuxt Contact Form With No Server Route — And Why $fetch Isn't the Right Tool Here

August 29, 2026

Nuxt Contact Form With No Server Route — And Why $fetch Isn't the Right Tool Here

Nuxt gives a contact form two built-in ways to reach a backend: a server route, or $fetch. The right answer for a simple form is neither — here's why, precisely.

Read more
Vue Contact Form Tutorial: A Backend in Nine Lines of Script

August 28, 2026

Vue Contact Form Tutorial: A Backend in Nine Lines of Script

A Vue 3 contact form using nothing but script setup and a fetch call — plus the one thing the standard version of this snippet quietly leaves out.

Read more
Astro Form Backend: A Contact Form That Still Works With JavaScript Off

August 27, 2026

Astro Form Backend: A Contact Form That Still Works With JavaScript Off

Astro ships zero JavaScript by default. Here's a contact form that respects that — working as plain HTML first, with AJAX feedback layered on top, not required.

Read more
React Form Submission Without a Server

August 26, 2026

React Form Submission Without a Server

Most React form tutorials assume a form library and a backend to submit to. This one needs neither — plus what actually happens when a browser POSTs straight to a third-party API.

Read more
Next.js Form Backend: A Contact Form With No API Route

August 25, 2026

Next.js Form Backend: A Contact Form With No API Route

Next.js makes it easy to reach for a Route Handler or Server Action for a contact form. Here's the version that needs neither — plus a fetch-specific gotcha most guides skip.

Read more
Landing Page Builder: A No-Code Editor Built Around Your Form

August 24, 2026

Landing Page Builder: A No-Code Editor Built Around Your Form

NBForms' landing page builder pairs eight templates and a block editor with the form it's publishing — no code, no drag canvas, no separate site to maintain.

Read more
Form Backend Spam Protection: Server-Side Filtering vs. CAPTCHAs

January 29, 2026

Form Backend Spam Protection: Server-Side Filtering vs. CAPTCHAs

Server-side spam filtering catches automated submissions without a visitor ever seeing a checkbox. Here's how it differs from a CAPTCHA, and when you need both.

Read more
Hosted Form Page: How to Collect Submissions With No Website at All

January 22, 2026

Hosted Form Page: How to Collect Submissions With No Website at All

A hosted form page gives a form its own working address without a website around it. What it actually is, how to publish one, and when it's the wrong tool.

Read more
HTML Form Backend: How to Add a Contact Form Without a Backend

January 15, 2026

HTML Form Backend: How to Add a Contact Form Without a Backend

A form backend is just an endpoint willing to accept the POST your <form> already sends. Here's exactly how that works, what it can't do, and when to reach for one.

Read more