Humane web checklist
Use this as a quick audit before you ship a page or feature.
- Respect privacy: no analytics, no hidden trackers, no fingerprinting.
- Stay accessible: readable contrast, keyboard‑friendly, clear language.
- Be forgiving: no lockouts, no hard rate limits, no hostile messages.
- Minimize friction: avoid puzzles, CAPTCHAs, and unnecessary hurdles.
- Explain gently: when something fails, say why in calm, human terms.
Gentle error & bot‑handling patterns
These are text patterns you can reuse in forms, APIs, and UIs.
“You don’t have access to this area yet. If you believe this is a mistake, you’re welcome to contact the maintainer so we can sort it out together.”
“Something went wrong on our side. Your request was not lost. Please try again in a moment, or reach out if this keeps happening.”
“It looks like an automated script may have filled in a hidden field. Please submit the form again, leaving any invisible or ‘do not fill’ fields empty.”
“We run quiet, background checks to keep this space safe from automated abuse. These checks are designed to stay invisible and never block genuine visitors.”
Humane contact form (server‑side only)
This form is designed to work with server‑side processing only. No JavaScript, no tracking, and a honeypot that never accuses humans.
Self‑hosting & Cloudflare notes
- Self‑hosted: keep this file on a private server or behind auth for trusted people.
- No indexing: the
<meta name="robots" content="noindex, nofollow">tag discourages search engines. - Cloudflare Pages: if you choose to make it public there, you can remove that meta tag.
- No JavaScript required: all behavior is server‑side; this file stays HTML + CSS only.