Signed-off-by: d0zingcat <iamtangli42@gmail.com>
Alert Message Center
README | 简体中文
Alert Message Center is a modern, enterprise-grade alert routing and dispatching hub. It decouples complex alert sources (Prometheus, Grafana, custom scripts, etc.) from end recipients, ensuring precise alert delivery via Feishu (Lark) private messages and group chats.
📸 Preview
1. Topic Management & Personal Inbox
Supports alert distribution through the Topic subscription model, and also provides a Personal Inbox feature for quick self-notifications without creating a topic.

2. Group Chat Alert Dispatch
Supports adding the bot to Feishu group chats and binding topics to these groups for group-wide broadcasting.

3. Admin Dashboard (Live Stats)
Real-time tracking of system alert load, dispatch success rates, and topic popularity.

🔥 Key Features
- 🚀 Zero-Config Personal Inbox: Every user has a unique Webhook Token. Send directly to the
/dminterface to receive messages on Feishu with zero configuration. - 📢 Topic Subscription Model: Flexible "Publish-Subscribe" mechanism. Alerts sent to a Topic are automatically distributed to all subscribers.
- 👥 Group Chat Distribution: Alerts can be simultaneously dispatched to bound Feishu group chats, supporting automatic discovery and unbinding.
- 🛡️ Permissions & Auditing:
- Topic creation requires admin approval.
- Full
Alert Tasklogs for end-to-end traceability.
- 📊 Real-time Dashboard: Grafana-style monitoring interface for system health visualization.
- 🔌 WebSocket Mode: Supports Feishu Open Platform WebSocket for intranet deployments without public IP or domain.
- ⚡ High Performance: Built on Bun + Hono for millisecond-level dispatch latency.
🛠️ Tech Stack
- Runtime: Bun (High-performance TS runtime)
- Backend: Hono (Web Standards Based)
- Frontend: React + Vite + Tailwind CSS
- Database: PostgreSQL + Drizzle ORM
- Messaging: Feishu (Lark) Open Platform
🚀 Quick Start
1. Feishu App Configuration
- Login to the Feishu Open Platform and create an Enterprise Custom App.
- Enable Bot capability in "App Capabilities".
- Apply for
im:message:send_as_botpermission in "Permission Management". - Get your
App IDandApp Secret.
2. Deployment
# Install dependencies
bun install
# Configure environment variables (apps/server/.env)
DATABASE_URL="postgresql://user:pass@localhost:5432/db"
FEISHU_APP_ID="cli_xxx"
FEISHU_APP_SECRET="xxx"
ADMIN_EMAILS="user1@example.com,user2@example.com"
# Database migration
cd apps/server && bun run db:migrate:deploy
# Start development
bun run dev
3. Docker Deployment
cp apps/server/.env.example .env
docker-compose up -d
🏗️ CI/CD
Automatically builds and pushes Docker images to GitHub Container Registry (GHCR) on every push to main.
📜 Changelog
See CHANGELOG.md for version history.
📡 Webhook Usage
- Personal Inbox:
POST /api/webhook/:your_token/dm - Topic:
POST /api/webhook/:your_token/topic/:topic_slug
📂 Project Structure
apps/server: Core API serviceapps/web: Responsive management dashboard
Created with ❤️ by the Alert Message Center Team.