Giscus offers a great solution to bring commenting support to your website, but it comes with the caveat that authorizing the app grants permissions to all repos. You can still comment on GitHub itself, but the discussion post itself is only created when an authenticated user leaves one first. This program solves that, running as a container that can check for new blog posts from an RSS feed, and generating a compatible discussion for Giscus.
- Install the binary with
cargo install rss_autogen_giscus
. - Get a personal access token with write permissions for GitHub discussions
- Set the environment variables as specified in the documentation.
- Run the program:
rss_autogen_giscus
You can also use the provided container image:
podman pull ghcr.io/cam-rod/rss_autogen_giscus:latest
podman run --rm -it -e DISCUSSION_CATEGORY=Blogs [...] rss_autogen_giscus:latest
- Enable Giscus in your repo. When choosing the page to discussions mapping, select "Discussion title contains page pathname".
- Copy the workflow job from this repo. Edit the environment variables, and modify the trigger as needed. Take note of
LOOKBACK_DAYS
, as it may recreate an existing post if the program is unintentionally triggered.
Feel free to open an issue or PR in this repo.
Both the program and container image are licensed under Apache 2.0.