Humane web principles
A quick lens to check whether a page respects people’s time, attention, and dignity.
- 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 and unnecessary hurdles.
- Explain gently: when something fails, say why in calm, human terms.
- Be honest: no dark patterns, no trick buttons, no hidden consequences.
Accessibility & calm‑design checklist
Use this before shipping a page. It’s intentionally short so it’s actually used.
Access
- Contrast: text passes WCAG AA where possible.
- Keyboard: all interactive elements are reachable and usable via keyboard.
- Labels: every form control has a visible label.
- Headings: structure content with
h1–h3in order.
Calm
- No flashing: no animations that distract or overwhelm.
- No urgency theatre: avoid fake countdowns or “only 1 left!” tricks.
- Soft language: errors are informative, not accusatory.
- Predictable: links and buttons do what they say.
Humane microcopy library
Drop‑in text snippets for errors, empty states, and gentle boundaries.
“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 wasn’t lost on purpose. 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.”
“There’s nothing here yet. That’s okay. When you add something, it will appear in this space.”
“We’re processing a lot right now and might respond a little more slowly than usual. You’re still welcome here, and your request will be handled.”
Humane contact form (no Turnstile)
Works with server‑side processing only. No JavaScript, no tracking, and a honeypot that never accuses humans.
Low‑friction sign‑up (with Turnstile)
A minimal, humane sign‑up pattern. No password rules theatre, no forced phone numbers. Turnstile runs quietly to discourage automated abuse.
Password reset (with Turnstile)
A gentle password reset form. Turnstile helps reduce automated abuse without punishing real people.
Self‑hosting & Cloudflare notes
This file is designed to live happily on a private server or a small, trusted‑audience site.
- 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 to allow indexing.
- Turnstile keys: replace
YOUR_TURNSTILE_SITE_KEYwith your real sitekey or a Cloudflare test key. - No lockouts: if you ever add protections, prefer soft slowdowns and explanations over hard blocks.