I’ve resurrected the work I mentioned here last year with the help of the ever-improving robot:
It’s in Julia (of course), but there’s really not much code here at all thanks to Discourse’s (largely) straightforward admin APIs. It’s two GitHub actions that hit a few endpoints to support:
- Site text customization
- First-post-of-a-topic editing (targeting Guidelines, TOS & privacy, but is extensible)
- Moderation flags
The goal is to let our open source community use the open source tooling and consensus processes they’re familiar with to help us define our collective norms.
You do really need to take care of that admin API key of course… and also want to make sure you don’t accidentally enable a new endpoint (by merging to main) that could reveal some sensitive setting on its first sync.