1414[ ![ GitHub Stars] ( https://img.shields.io/github/stars/sansan0/TrendRadar?style=flat-square&logo=github&color=yellow )] ( https://github.com/sansan0/TrendRadar/stargazers )
1515[ ![ GitHub Forks] ( https://img.shields.io/github/forks/sansan0/TrendRadar?style=flat-square&logo=github&color=blue )] ( https://github.com/sansan0/TrendRadar/network/members )
1616[ ![ License] ( https://img.shields.io/badge/license-GPL--3.0-blue.svg?style=flat-square )] ( LICENSE )
17- [ ![ Version] ( https://img.shields.io/badge/version-v3.3 .0-blue.svg )] ( https://github.com/sansan0/TrendRadar )
17+ [ ![ Version] ( https://img.shields.io/badge/version-v3.4 .0-blue.svg )] ( https://github.com/sansan0/TrendRadar )
1818[ ![ MCP] ( https://img.shields.io/badge/MCP-v1.0.2-green.svg )] ( https://github.com/sansan0/TrendRadar )
1919
2020[ ![ WeWork] ( https://img.shields.io/badge/WeWork-Notification-00D4AA?style=flat-square )] ( https://work.weixin.qq.com/ )
2525[ ![ Email] ( https://img.shields.io/badge/Email-Notification-00D4AA?style=flat-square )] ( # )
2626[ ![ ntfy] ( https://img.shields.io/badge/ntfy-Notification-00D4AA?style=flat-square )] ( https://github.com/binwiederhier/ntfy )
2727[ ![ Bark] ( https://img.shields.io/badge/Bark-Notification-00D4AA?style=flat-square )] ( https://github.com/Finb/Bark )
28+ [ ![ Slack] ( https://img.shields.io/badge/Slack-Notification-00D4AA?style=flat-square )] ( https://slack.com/ )
2829
2930
3031[ ![ GitHub Actions] ( https://img.shields.io/badge/GitHub_Actions-Automation-2088FF?style=flat-square&logo=github-actions&logoColor=white )] ( https://github.com/sansan0/TrendRadar )
6061- Thanks to ** followers** , your interactions make the content more meaningful 😎
6162
6263<details >
63- <summary >👉 Click to view <strong >Acknowledgments</strong > (Current <strong >🔥72 🔥</strong > supporters)</summary >
64+ <summary >👉 Click to view <strong >Acknowledgments</strong > (Current <strong >🔥73 🔥</strong > supporters)</summary >
6465
6566### Infrastructure Support
6667
@@ -90,6 +91,7 @@ After communication, the author indicated no concerns about server pressure, but
9091
9192| Supporter | Amount (CNY) | Date | Note |
9293| :-------: | :----------: | :--: | :--: |
94+ | D* 5 | 1.8 * 3 | 2025.11.24 | |
9395| * 鬼 | 1 | 2025.11.17 | |
9496| * 超 | 10 | 2025.11.17 | |
9597| R* w | 10 | 2025.11.17 | Great agent work! |
@@ -270,6 +272,33 @@ Transform from "algorithm recommendation captivity" to "actively getting the inf
270272- ** Major Version Upgrade** : Upgrading from v1.x to v2.y, recommend deleting existing fork and re-forking to save effort and avoid config conflicts
271273
272274
275+ ### 2025/11/25 - v3.4.0
276+
277+ ** 🎉 Added Slack Push Support**
278+
279+ 1 . ** Team Collaboration Push Channel**
280+ - Supports Slack Incoming Webhooks (globally popular team collaboration tool)
281+ - Centralized message management, suitable for team-shared trending news
282+ - Supports mrkdwn format (bold, links, etc.)
283+
284+ 2 . ** Multiple Deployment Methods**
285+ - GitHub Actions: Configure ` SLACK_WEBHOOK_URL ` Secret
286+ - Docker: Environment variable ` SLACK_WEBHOOK_URL `
287+ - Local: ` config/config.yaml ` configuration file
288+
289+
290+ > 📖 ** Detailed Configuration Tutorial** : [ Quick Start - Slack Push] ( #-quick-start )
291+
292+ - Optimized the one-click installation experience for setup-windows.bat and setup-windows-en.bat
293+
294+ ** 🔧 Upgrade Instructions** :
295+ - ** GitHub Fork Users** : Update ` main.py ` , ` config/config.yaml ` , ` .github/workflows/crawler.yml `
296+
297+
298+ <details >
299+ <summary >👉 Click to expand: <strong >Historical Updates</strong ></summary >
300+
301+
273302### 2025/11/24 - v3.3.0
274303
275304** 🎉 Added Bark Push Support**
@@ -334,9 +363,6 @@ Transform from "algorithm recommendation captivity" to "actively getting the inf
334363 - Fix issue where today's news query may return articles from past dates
335364
336365
337- <details >
338- <summary ><strong >👉 Click to expand: Historical Updates</strong ></summary >
339-
340366### 2025/11/20 - v3.1.0
341367
342368- ** Added Personal WeChat Push Support** : WeWork application can push to personal WeChat without installing WeWork APP
@@ -918,6 +944,7 @@ frequency_words.txt file added **required word** feature, using + sign
918944 | ** Sina Mail** | sina.com | smtp.sina.com | 465 | SSL |
919945 | ** Sohu Mail** | sohu.com | smtp.sohu.com | 465 | SSL |
920946 | ** 189 Mail** | 189.cn | smtp.189.cn | 465 | SSL |
947+ | ** Aliyun Mail** | aliyun.com | smtp.aliyun.com | 465 | TLS |
921948
922949 > ** Auto-detect** : When using above emails, no need to manually configure ` EMAIL_SMTP_SERVER ` and ` EMAIL_SMTP_PORT ` , system auto-detects.
923950 >
@@ -927,6 +954,7 @@ frequency_words.txt file added **required word** feature, using + sign
927954 >
928955 > ** Special Thanks** :
929956 > - Thanks to [ @DYZYD ] ( https://github.com/DYZYD ) for contributing 189 Mail (189.cn) configuration and completing self-send-receive testing ([ #291 ] ( https://github.com/sansan0/TrendRadar/issues/291 ) )
957+ > - Thanks to [ @longzhenren ] ( https://github.com/longzhenren ) for contributing Aliyun Mail (aliyun.com) configuration and completing testing ([ #344 ] ( https://github.com/sansan0/TrendRadar/issues/344 ) )
930958
931959 ** Common Email Settings:**
932960
@@ -1078,6 +1106,162 @@ frequency_words.txt file added **required word** feature, using + sign
10781106
10791107 </details>
10801108
1109+ <details>
1110+ <summary>👉 Click to expand : <strong>Bark Push</strong> (iOS exclusive, clean & efficient)</summary>
1111+ <br>
1112+
1113+ **GitHub Secret Configuration (⚠️ Name must be exact):**
1114+ - **Name**: `BARK_URL` (copy and paste this name, don't type manually)
1115+ - **Secret**: Your Bark push URL
1116+
1117+ <br>
1118+
1119+ **Bark Introduction:**
1120+
1121+ Bark is a free open-source push tool for iOS platform, featuring simplicity, speed, and no ads.
1122+
1123+ **Usage Methods:**
1124+
1125+ # ## Method 1: Use Official Server (Recommended for beginners) 🆓
1126+
1127+ 1. **Download Bark App** :
1128+ - iOS : [App Store](https://apps.apple.com/us/app/bark-customed-notifications/id1403753865)
1129+
1130+ 2. **Get Push URL** :
1131+ - Open Bark App
1132+ - Copy the push URL displayed on the home page (format : ` https://api.day.app/your_device_key` )
1133+ - Configure the URL to GitHub Secrets as `BARK_URL`
1134+
1135+ # ## Method 2: Self-Hosted Server (Complete Privacy Control) 🔒
1136+
1137+ **Suitable for**: Users with servers, pursuing complete privacy, strong technical skills
1138+
1139+ **Docker One-Click Deployment**:
1140+ ` ` ` bash
1141+ docker run -d \
1142+ --name bark-server \
1143+ -p 8080:8080 \
1144+ finab/bark-server
1145+ ` ` `
1146+
1147+ **Configure TrendRadar**:
1148+ ` ` ` yaml
1149+ BARK_URL: http://your-server-ip:8080/your_device_key
1150+ ` ` `
1151+
1152+ ---
1153+
1154+ **Notes:**
1155+ - ✅ Bark uses APNs push, max 4KB per message
1156+ - ✅ Supports automatic batch sending, no worry about long messages
1157+ - ✅ Push format is plain text (automatically removes Markdown syntax)
1158+ - ⚠️ Only supports iOS platform
1159+
1160+ **Related Links:**
1161+ - [Bark Official Website](https://bark.day.app/)
1162+ - [Bark GitHub Repository](https://github.com/Finb/Bark)
1163+ - [Bark Server Self-Hosting Tutorial](https://github.com/Finb/bark-server)
1164+
1165+ </details>
1166+
1167+ <details>
1168+ <summary>👉 Click to expand : <strong>Slack Push</strong></summary>
1169+ <br>
1170+
1171+ **GitHub Secret Configuration (⚠️ Name must be exact):**
1172+ - **Name**: `SLACK_WEBHOOK_URL` (copy and paste this name, don't type manually)
1173+ - **Secret**: Your Slack Incoming Webhook URL
1174+
1175+ <br>
1176+
1177+ **Slack Introduction:**
1178+
1179+ Slack is a team collaboration tool, Incoming Webhooks can push messages to Slack channels.
1180+
1181+ **Setup Steps:**
1182+
1183+ # ## Step 1: Create Slack App
1184+
1185+ 1. **Visit Slack API Page** :
1186+ - Open https://api.slack.com/apps?new_app=1
1187+ - Login to your Slack workspace if not logged in
1188+
1189+ 2. **Choose Creation Method** :
1190+ - Click **"From scratch"**
1191+
1192+ 3. **Fill in App Information** :
1193+ - **App Name**: Enter app name (e.g., `TrendRadar` or `Hot News Monitor`)
1194+ - **Workspace**: Select your workspace from dropdown
1195+ - Click **"Create App"** button
1196+
1197+ # ## Step 2: Enable Incoming Webhooks
1198+
1199+ 1. **Navigate to Incoming Webhooks** :
1200+ - Find and click **"Incoming Webhooks"** in left menu
1201+
1202+ 2. **Enable Feature** :
1203+ - Find **"Activate Incoming Webhooks"** toggle
1204+ - Switch from `OFF` to `ON`
1205+ - Page will auto-refresh showing new configuration options
1206+
1207+ # ## Step 3: Generate Webhook URL
1208+
1209+ 1. **Add New Webhook** :
1210+ - Scroll to page bottom
1211+ - Click **"Add New Webhook to Workspace"** button
1212+
1213+ 2. **Select Target Channel** :
1214+ - System will show authorization page
1215+ - Select channel to receive messages from dropdown (e.g., `#hot-news`)
1216+ - ⚠️ For private channels, must join the channel first
1217+
1218+ 3. **Authorize App** :
1219+ - Click **"Allow"** button to complete authorization
1220+ - System will auto-redirect back to config page
1221+
1222+ # ## Step 4: Copy and Save Webhook URL
1223+
1224+ 1. **View Generated URL** :
1225+ - In "Webhook URLs for Your Workspace" section
1226+ - You'll see the newly generated Webhook URL
1227+ - Format : ` https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX`
1228+
1229+ 2. **Copy URL** :
1230+ - Click **"Copy"** button on the right of URL
1231+ - Or manually select and copy URL
1232+
1233+ 3. **Configure to TrendRadar** :
1234+ - **GitHub Actions**: Add URL to GitHub Secrets as `SLACK_WEBHOOK_URL`
1235+ - **Local Testing**: Fill URL in `config/config.yaml` `slack_webhook_url` field
1236+ - **Docker Deployment**: Add URL to `docker/.env` file as `SLACK_WEBHOOK_URL` variable
1237+
1238+ ---
1239+
1240+ **Notes:**
1241+ - ✅ Supports Markdown format (auto-converts to Slack mrkdwn)
1242+ - ✅ Supports automatic batch sending (4KB per batch)
1243+ - ✅ Suitable for team collaboration, centralized message management
1244+ - ⚠️ Webhook URL contains secret key, never make it public
1245+
1246+ **Message Format Preview:**
1247+ ```
1248+ * [ Batch 1/2] *
1249+
1250+ 📊 * Trending Topics Statistics*
1251+
1252+ 🔥 * [ 1/3] AI ChatGPT* : 2 articles
1253+
1254+ 1 . [ Baidu Hot] 🆕 ChatGPT-5 Official Release * [ 1] * - 09:15 (1 time)
1255+
1256+ 2 . [ Toutiao] AI Chip Stocks Surge * [ 3] * - [ 08:30 ~ 10:45] (3 times)
1257+ ```
1258+
1259+ **Related Links:**
1260+ - [Slack Incoming Webhooks Official Docs](https://api.slack.com/messaging/webhooks)
1261+ - [Slack API App Management](https://api.slack.com/apps)
1262+
1263+ </details>
1264+
10811265 > **💡 Beginner Quick Start Tip**:
10821266 >
10831267 > For first deployment, suggest completing **GitHub Secrets** configuration first (choose one push platform), then jump to [Step 3] to test push success.
@@ -1330,7 +1514,7 @@ Meizu
13301514!second-hand
13311515```
13321516
1333- ��� **Recommended:** Split into precise groups
1517+ ** Recommended:** Split into precise groups
13341518``` txt
13351519Huawei
13361520OPPO
@@ -1804,6 +1988,10 @@ Cherry Studio provides GUI config interface, 5-minute quick deployment, complex
18041988
18051989**Detailed Deployment Tutorial**: [README-Cherry-Studio.md](README-Cherry-Studio.md)
18061990
1991+ **Deployment Mode Description**:
1992+ - **STDIO Mode (Recommended)**: One-time configuration, no need to reconfigure later. The **illustrated deployment tutorial** only demonstrates this mode's configuration.
1993+ - **HTTP Mode (Alternative)**: If STDIO mode configuration encounters issues, you can use HTTP mode. This mode's configuration is basically the same as STDIO, but only requires copy-pasting one line, less error-prone. The only thing to note is that you need to manually start the service before each use. For details, refer to the HTTP mode section at the bottom of [README-Cherry-Studio.md](README-Cherry-Studio.md).
1994+
18071995# ## 2. Learning to Talk with AI
18081996
18091997**Detailed Conversation Tutorial**: [README-MCP-FAQ.md](README-MCP-FAQ.md)
0 commit comments