Go to file
shiftinv 0917fa7382 docs: update readme once more 2022-09-04 16:13:06 +02:00
.github docs: update readme once more 2022-09-04 16:13:06 +02:00
lib feat: add metadata headers to response 2022-09-04 15:34:59 +02:00
.dockerignore feat: add docker stuff 2022-09-03 02:19:54 +02:00
.env.example feat: add redirect to root 2022-09-04 15:34:59 +02:00
.gitignore Initial commit 2022-09-03 02:19:53 +02:00
.pre-commit-config.yaml fix: update pre-commit hook file types 2022-09-03 02:19:54 +02:00
Dockerfile feat: add docker stuff 2022-09-03 02:19:54 +02:00
LICENSE docs: add readme and license 2022-09-03 02:19:54 +02:00
README.md docs: update readme once more 2022-09-04 16:13:06 +02:00
deno.json Initial commit 2022-09-03 02:19:53 +02:00
deps.ts feat: filter burst PR review comments 2022-09-03 17:31:40 +02:00
docker-compose.yml feat: add docker stuff 2022-09-03 02:19:54 +02:00
main.ts feat: make url signing optional 2022-09-04 15:34:58 +02:00

README.md

github-webhook-filter

A webhook filter for Deno that filters GitHub events before forwarding them to a Discord webhook, reducing noise.
Additionally, it attempts to handle Discord ratelimits and resend the webhook events if needed, instead of just dropping the requests like GitHub does.

Certain no-op events (which Discord would ignore anyway) and common CI bots are ignored by default; additional options can be configured per URL:

  • Only forward events from specific branches (allowBranches, comma-separated list)
  • Ignore tag updates (hideTags)
  • Ignore burst PR review comments in a short timespan, only showing the first x comments (commentBurstLimit)

Usage

Note The main service (https://github-webhook-filter.deno.dev/) is not open to the public (yet?), and currently requires an api key to prevent abuse. Feel free to message me on Discord if you want to use it. Alternatively, you can always host the project yourself, and customize it to your liking c:

  1. Create a Discord webhook (https://discord.com/api/webhooks/1234/ABCDWXYZ).
  2. Take the ID (1234) and token (ABCDWXYZ) from the URL, and enter https://<filter_url>/1234/ABCDWXYZ (note: no /github) in the GitHub webhook settings:
    settings
  3. Optionally add configuration parameters (see above) to the URL, e.g. ?allowBranches=master,dev&hideTags=1.
  4. ????
  5. Profit!