Files
Aoyo.Taiga/README.md
Dmitri Shimanski 2d36a60f5d Create project file
2025-07-29 23:37:04 +03:00

79 lines
2.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Aoyo.Taiga
**Aoyo.Taiga** is a lightweight C# application that listens for webhooks from [Taiga](https://taiga.io/) and sends a notification to a specified Discord channel via a bot.
## ✨ Features
- Receives webhook events from Taiga.
- Sends formatted messages to a designated Discord channel.
- Lightweight and easy to run (locally or in a container).
- Supports configuration via `environment variables` or `appsettings.json`.
## ⚙️ Required Configuration
The app requires the following configuration keys to function:
### Environment variables (`ENV`)
- `Discord__Token` your Discord bot token.
- `Discord__Id` target Discord channel ID.
- `Taiga__Key` secret key to validate incoming Taiga webhooks.
### OR `appsettings.json`:
```json
{
"Discord": {
"Token": "your_discord_token",
"Id": "your_channel_id"
},
"Taiga": {
"Key": "your_taiga_webhook_secret"
}
}
```
Only one method of configuration is required. You can choose between env vars or appsettings.json.
🐳 Run with Docker
You can pull and run the prebuilt image from GitHub Container Registry (GHCR):
```bash
docker run -d \
-e Discord__Token=your_token \
-e Discord__Id=your_channel_id \
-e Taiga__Key=your_webhook_key \
-p 8080:80 \
ghcr.io/yawaflua/aoyo.taiga:latest
```
🧪 Run Locally
Make sure you have the .NET SDK installed.
1. Clone the repo
```shell
git clone https://github.com/yawaflua/Aoyo.Taiga.git
```
cd Aoyo.Taiga
2. Configure credentials
Either set env variables or fill in appsettings.json.
3. Run the app
```bash
dotnet run --project Aoyo.Taiga
```
By default, it will listen on http://localhost:8080/aoyo.
🚀 Behavior
Once a webhook is sent from Taiga (with the correct key), the app will verify it and forward a message to the Discord channel defined by the Discord__Id.
📫 Webhook Endpoint
You can point your Taiga webhook to:
`POST https://example.mycooldomain.co.il/aoyo/api/v1/TaigaWebHook/post`
Make sure to include the Taiga__Key as a query parameter or in the header to pass validation.
Project can be used under [Apache 2.0](LICENCE)