Skip to content

Commit 0bd0722

Browse files
committed
docs: Enhance README with detailed project description and features, update nx commands, and add implicit dependencies for project configuration.
1 parent b210f37 commit 0bd0722

File tree

4 files changed

+38
-12
lines changed

4 files changed

+38
-12
lines changed

AGENTS.md

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ This repo uses Codex-style coding agents. Keep instructions short, concrete, and
1919
## Testing
2020

2121
- Prefer unit tests near the code (module `#[cfg(test)]`).
22-
- Run: `cargo test -p webhook_router`.
22+
- Run backend tests: `nx test webhook_router`.
23+
- Run e2e tests: `nx e2e console-e2e --outputStyle=static`.
2324

2425
## Docs
2526

@@ -28,7 +29,7 @@ This repo uses Codex-style coding agents. Keep instructions short, concrete, and
2829

2930
## Client Generation
3031

31-
- To generate the API client: `nx run @webhook-router/api-client:generate`
32+
- To generate the API client: `nx run api-client:generate`
3233

3334
<!-- nx configuration start-->
3435
<!-- Leave the start & end comments to automatically receive updates. -->

README.md

Lines changed: 27 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,24 @@
11
# Webhook Router
22

3-
Webhook Router normalizes incoming webhook payloads into Markdown and forwards them to one or more downstream targets. It includes a lightweight console UI and a basic API for managing endpoints and targets.
3+
A universal webhook adapter that normalizes incoming webhook payloads into Markdown and forwards them to multiple downstream targets with platform-specific formatting.
44

5-
## What it does
6-
- Accepts incoming webhooks and normalizes content to Markdown.
7-
- Forwards events to multiple targets and records delivery results.
8-
- Provides a console UI under `/console` and a Basic Auth protected API under `/console/api`.
5+
## Background
6+
7+
Many monitoring and alerting tools (like GlitchTip, Sentry, etc.) only support a limited set of webhook targets such as Slack and Discord. However, teams often use different communication platforms (DingTalk, Lark, WeCom, etc.) that aren't on the supported list. This creates a gap when you need to receive alerts in your team's preferred tool.
8+
9+
Webhook Router solves this problem by acting as a universal adapter that:
10+
- **Accepts webhooks from multiple platforms** (ingress compatibility) - supports various webhook formats including Slack, DingTalk, Lark, WeCom, and custom HTTP webhooks
11+
- **Forwards to multiple platforms** (egress compatibility) - converts and delivers messages to any supported target platform
12+
- **Normalizes content to Markdown** - provides a unified intermediate format for easy transformation
13+
- **Manages multiple targets** - send one webhook to many destinations simultaneously
14+
15+
## Features
16+
17+
- Accepts incoming webhooks and normalizes content to Markdown
18+
- Forwards events to multiple targets with platform-specific formatting
19+
- Records delivery results for each target
20+
- Provides a console UI under `/console` and a Basic Auth protected API under `/console/api`
21+
- Supports custom banner/footer for message customization
922

1023
## Docker
1124
The container expects configuration through environment variables.
@@ -87,19 +100,25 @@ pnpm install
87100
Run the backend (builds the console as a dependency):
88101

89102
```bash
90-
pnpm exec nx run webhook_router:run:debug
103+
nx run webhook_router:run:debug
91104
```
92105

93106
Run tests:
94107

95108
```bash
96-
pnpm exec nx run webhook_router:test
109+
nx test webhook_router
110+
```
111+
112+
Run e2e tests:
113+
114+
```bash
115+
nx e2e console-e2e --outputStyle=static
97116
```
98117

99118
Generate OpenAPI + API client:
100119

101120
```bash
102-
pnpm exec nx run @webhook-router/api-client:generate
121+
nx run api-client:generate
103122
```
104123

105124
## Docs

apps/console-e2e/package.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,10 @@
1414
}
1515
]
1616
}
17-
}
17+
},
18+
"implicitDependencies": [
19+
"webhook_router"
20+
]
1821
},
1922
"dependencies": {
2023
"express": "^5.2.1"

apps/webhook_router/project.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,5 +104,8 @@
104104
}
105105
}
106106
},
107-
"tags": []
107+
"tags": [],
108+
"implicitDependencies": [
109+
"console"
110+
]
108111
}

0 commit comments

Comments
 (0)