No description
  • JavaScript 100%
Find a file
2026-06-20 12:47:55 +00:00
.forgejo/workflows feat: add super sites 2026-06-19 18:37:18 +02:00
fingerprints site-check: flag changed sites for review 2026-06-20 12:47:55 +00:00
sites faet: add more sites 2026-06-20 14:46:28 +02:00
super-sites faet: add more sites 2026-06-20 14:46:28 +02:00
to-review feat: add super sites and add them 2026-06-20 12:58:57 +02:00
.gitignore feat: better scanning 2026-04-13 15:00:31 +02:00
bun.lock feat: better scanning 2026-04-13 15:00:31 +02:00
check-sites.mjs feat: add super sites 2026-06-19 18:37:18 +02:00
package-lock.json chore: add package lock 2026-03-27 00:17:24 +01:00
package.json feat: better scanning 2026-04-13 15:00:31 +02:00
README.md faet: add more sites 2026-06-20 14:46:28 +02:00
sites.txt site-check: flag changed sites for review 2026-06-20 12:47:55 +00:00

senden.chat secure-sites

A whitelist of trusted domains. Every day at midnight a bot screenshots each site and compares it to the previous baseline. If a site changes significantly it gets moved to to-review/ for manual inspection.

Structure

sites/         # Whitelisted domains (one empty file per domain)
super-sites/   # Trusted domains that are never fingerprint-checked
to-review/     # Domains flagged for visual changes
fingerprints/   # Page fingerprints to detect changes of the page

Both sites/ and super-sites/ end up in the generated sites.txt. The difference is that super-sites/ domains are never screenshotted, fingerprinted, or moved to to-review/.

Contributing

Adding a domain

  1. Fork the repo and create a branch.
  2. Create an empty file in sites/ named after the domain:
    touch sites/example.com
    
    For subdomains, use the full hostname:
    touch sites/app.example.com
    
  3. Open a pull request. The linter will verify your changes are valid.

Adding a super-site

Super-sites are trusted domains that should always be in sites.txt but must never be fingerprint-checked or auto-flagged. Create an empty file in super-sites/ instead of sites/:

touch super-sites/example.com

Removing a domain

Delete the file from sites/ (or to-review/) and open a pull request.

Reviewing a flagged domain

Only senden maintainers are allowed to re-review domains.

This will reset its baseline screenshot on the next bot run.

Rules

  • Site files must be empty. no content inside them.
  • PRs can only add, remove, or move files between sites/ and to-review/. No other modifications are allowed.
  • The linter workflow enforces these rules automatically.