Skip to content

docs: add X-Trust human presence middleware example - #2514

Closed
htl-syterme wants to merge 2 commits into
expressjs:mainfrom
htl-syterme:main
Closed

htl-syterme wants to merge 2 commits into
expressjs:mainfrom
htl-syterme:main

Conversation

@htl-syterme

Copy link
Copy Markdown

I've been dealing with bot abuse on a side project where bots were hitting our API endpoints and burning through our free tier budget. Didn't want to add a captcha because it kills signups. Built a small open standard called X-Trust that reads a signed header and annotates the request with a human score.

It works as Express middleware in 3 lines. The client SDK measures keystroke timing and touch entropy, signs a score with HMAC-SHA256, attaches it as an X-Trust header. The server verifies the signature. Tokens expire in 120 seconds so replay attacks don't work.

This PR adds a documentation page showing how to use it with Express. It never blocks requests — just annotates them with a trust score so the app decides what to do.

OSS spec and live endpoint: https://github.com/htl-syterme/htl-core

Added documentation for X-Trust Human Presence Middleware installation.

Signed-off-by: htl-syterme <diengamine.htl@gmail.com>
Added usage example and explanation for X-Trust middleware.

Signed-off-by: htl-syterme <diengamine.htl@gmail.com>
@htl-syterme
htl-syterme requested a review from a team as a code owner September 13, 2026 18:17
@netlify

netlify Bot commented Sep 13, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for expressjscom-preview ready!

Name Link
🔨 Latest commit 05d60a0
🔍 Latest deploy log https://app.netlify.com/projects/expressjscom-preview/deploys/6aa6e8bff800c800082a6bcc
😎 Deploy Preview https://deploy-preview-2514--expressjscom-preview.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
Lighthouse
Lighthouse
1 paths audited
Performance: 98 (🟢 up 1 from production)
Accessibility: 100 (no change from production)
Best Practices: 100 (no change from production)
SEO: 100 (no change from production)
PWA: 80 (no change from production)
View the detailed breakdown and full score reports
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

@krzysdz

krzysdz commented Sep 13, 2026

Copy link
Copy Markdown
Contributor

We currently don't add middleware recommendations, because we have no requirements specifying what could be added. For earlier examples of similar requests and discussions see:

Your account and the middleware are new (20 days old), the middleware looks is vibe coded, has 5 downloads in the last week from NPM, is paid (in crypto only!)1 and you "market it" heavily and in rather suspicious way, so if there were any guidelines on middleware that may be featured on the Express website, this probably wouldn't satisfy them. By the way, the docs/ directory is not even a part of the website.

Footnotes

  1. There's also no information who the seller is, no terms of service, no nothing and the process may be illegal - I assume that there won't be an invoice either? ↩

@krzysdz krzysdz closed this Sep 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants