https://github.com/OpenAISpace/ai-trend-publish
一个基于 AI 的趋势发现和内容发布系统,支持多源数据采集、智能总结和自动发布到微信公众号
https://github.com/OpenAISpace/ai-trend-publish
Last synced: 4 months ago
JSON representation
一个基于 AI 的趋势发现和内容发布系统,支持多源数据采集、智能总结和自动发布到微信公众号
- Host: GitHub
- URL: https://github.com/OpenAISpace/ai-trend-publish
- Owner: OpenAISpace
- License: mit
- Created: 2025-01-13T12:32:39.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2025-02-27T08:41:57.000Z (4 months ago)
- Last Synced: 2025-02-27T12:12:11.114Z (4 months ago)
- Language: HTML
- Homepage:
- Size: 524 KB
- Stars: 265
- Watchers: 4
- Forks: 28
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-hacking-lists - OpenAISpace/ai-trend-publish - TrendPublish: 全自动 AI 内容生成与发布系统 | 微信公众号自动化 | 多源数据抓取 (Twitter/X、网站) | DeepseekAI、千问、讯飞模型 | 智能内容分析排序 | 定时发布 | 多模板支持 | Node.js | TypeScript | AI 技术趋势跟踪工具 (TypeScript)
README
# TrendPublish
一个基于 AI 的趋势发现和内容发布系统,支持多源数据采集、智能总结和自动发布到微信公众号。
> 🌰 示例公众号:**AISPACE科技空间**
> 即刻关注,体验 AI 智能创作的内容~
## 🌟 主要功能
- 🤖 多源数据采集
- Twitter/X 内容抓取
- 网站内容抓取 (基于 FireCrawl)
- 支持自定义数据源配置- 🧠 AI 智能处理
- 使用 DeepseekAI Together 千问 万象 讯飞 进行内容总结
- 关键信息提取
- 智能标题生成- 📢 自动发布
- 微信公众号文章发布
- 自定义文章模板
- 定时发布任务- 📱 通知系统
- Bark 通知集成
- 任务执行状态通知
- 错误告警## DONE
- [x] 微信公众号文章发布
- [x] 大模型每周排行榜
- [x] 热门AI相关仓库推荐## Todo
- [ ] 热门AI相关论文推荐
- [ ] 热门AI相关工具推荐
- [ ] FireCrawl 自动注册免费续期## 🛠 技术栈
- **运行环境**: Node.js + TypeScript
- **AI 服务**: DeepseekAI Together 千问 万象 讯飞
- **数据源**:
- Twitter/X API
- FireCrawl
- **定时任务**: node-cron
- **模板引擎**: EJS
- **开发工具**:
- nodemon (热重载)
- TypeScript## 🚀 快速开始
### 环境要求
- Node.js (v22+)
- npm
- TypeScript### 安装
1. 克隆项目
```bash
git clone https://github.com/OpenAISpace/ai-trend-publish
```2. 安装依赖
```bash
npm install
```3. 配置环境变量
```bash
cp .env.example .env
# 编辑 .env 文件配置必要的环境变量
```## ⚙️ 环境变量配置
在 `.env` 文件中配置以下必要的环境变量:
```bash
如果需要使用数据库配置(先从数据库查找配置key,然后再env寻找):
DB_HOST=xxxx
DB_PORT=xxxx
DB_USER=xxxx
DB_PASSWORD=xxxx
DB_DATABASE=xxxx微信文章获取的必备环境:
# DeepseekAI API 配置 https://api-docs.deepseek.com/ 获取
DEEPSEEK_API_KEY=your_api_key# FireCrawl 配置 https://www.firecrawl.dev/ 获取
FIRE_CRAWL_API_KEY=your_api_key# Twitter API 配置 https://twitterapi.io/ 获取
X_API_BEARER_TOKEN=your_api_key# 千问 https://bailian.console.aliyun.com/ 获取
DASHSCOPE_API_KEY=your_api_key# 微信公众号配置
WEIXIN_APP_ID=your_app_id
WEIXIN_APP_SECRET=your_app_secret可选环境:
# Bark 通知配置
BARK_KEY=your_key# 获取图片 API 配置 https://getimg.cc/ 获取
GETIMG_API_KEY=your_api_keyTOGETHER_API_KEY=your_api_key
```
4. 启动项目
```bash
# 测试模式
npm run test# 运行
npm run start详细运行时间见 src\controllers\cron.ts
```## 📦 部署指南
### 方式一:直接部署
1. 在服务器上安装 Node.js (v20+) 和 PM2
```bash
# 安装 PM2
npm install -g pm2
```2. 构建项目
```bash
npm run build
```3. 使用 PM2 启动服务
```bash
pm2 start dist/index.js --name ai-trend-publish
```### CI/CD 自动部署
项目已配置 GitHub Actions 自动部署流程:
1. 推送代码到 main 分支会自动触发部署
2. 也可以在 GitHub Actions 页面手动触发部署
3. 确保在 GitHub Secrets 中配置以下环境变量:
- `SERVER_HOST`: 服务器地址
- `SERVER_USER`: 服务器用户名
- `SSH_PRIVATE_KEY`: SSH 私钥
- 其他必要的环境变量(参考 .env.example)## 🤝 贡献指南
1. Fork 本仓库
2. 创建特性分支 (`git checkout -b feature/amazing-feature`)
3. 提交更改 (`git commit -m 'Add some amazing feature'`)
4. 推送到分支 (`git push origin feature/amazing-feature`)
5. 提交 Pull Request## Star History
[](https://star-history.com/#OpenAISpace/ai-trend-publish&Date)
## 📄 许可证
本项目采用 MIT 许可证 - 详见 [LICENSE](LICENSE) 文件