⛳ alerts for any ctfd instance via ntfy
1# ⛳ CTFd alerts 2 3Sends alerts for any arbitrary [CTFd](https://ctfd.io/) instance via [ntfy](https://ntfy.sh/) 4 5![vhs gif of the command being run](https://github.com/taciturnaxolotl/ctfd-alerts/blob/main/.github/images/out.gif?raw=true) 6 7## Install 8 9You can download a pre-built binary from the releases or you can use the following options 10 11### Go 12 13```bash 14# Go 15go install github.com/taciturnaxolotl/ctfd-alerts@latest 16``` 17 18If you need a systemd service file there is one in `ctfd-alerts.service` 19 20### Nix 21 22```bash 23# Direct installation with flakes enabled 24nix profile install github:taciturnaxolotl/ctfd-alerts 25``` 26 27For use in your own flake: 28 29```nix 30# In your flake.nix 31{ 32 inputs.ctfd-alerts.url = "github:taciturnaxolotl/ctfd-alerts"; 33 34 outputs = { self, nixpkgs, ctfd-alerts, ... }: { 35 # Access the package as: 36 # ctfd-alerts.packages.${system}.default 37 }; 38} 39``` 40 41## Config 42 43The config for the bot is quite simple. Create a `config.toml` file in the same directory as the binary (or link to the config location with `-c ./path/to/config/config.toml`) with the following format: 44 45```toml 46debug = true 47interval = 100 # defaults to 300 if unset 48user = "echo_kieran" 49 50[ctfd] 51api_base = "http://163.11.237.79/api/v1" 52api_key = "ctfd_10698fd44950bf7556bc3f5e1012832dae5bddcffb1fe82191d8dd3be3641393" 53 54[ntfy] 55api_base = "https://ntfy.sh/" 56acess_token = "" 57topic = "youralert" 58``` 59 60Written in go. If you have any suggestions or issues feel free to open an issue on my [tangled](https://tangled.sh/@dunkirk.sh/ctfd-alerts) knot 61 62<p align="center"> 63 <img src="https://raw.githubusercontent.com/taciturnaxolotl/carriage/master/.github/images/line-break.svg" /> 64</p> 65 66<p align="center"> 67 <i><code>&copy 2025-present <a href="https://github.com/taciturnaxolotl">Kieran Klukas</a></code></i> 68</p> 69 70<p align="center"> 71 <a href="https://github.com/taciturnaxolotl/ctfd-alerts/blob/master/LICENSE.md"><img src="https://img.shields.io/static/v1.svg?style=for-the-badge&label=License&message=MIT&logoColor=d9e0ee&colorA=363a4f&colorB=b7bdf8"/></a> 72</p>