Ai-trend-publish 是一个基于 AI 的趋势发现和内容发布系统,支持多源数据采集、智能总结和自动发布到微信公众号。该项目旨在帮助内容创作者高效地获取、处理并发布信息。

核心功能

  • 多源数据采集:
    • Twitter/X 内容抓取
    • 网站内容抓取(基于 FireCrawl)
    • 支持自定义数据源配置
  • AI 智能处理:
    • 使用 DeepseekAI 进行内容总结
    • 关键信息提取
    • 智能标题生成
  • 自动发布:
    • 微信公众号文章发布
    • 自定义文章模板
    • 定时发布任务
  • 通知系统:
    • Bark 通知集成
    • 任务执行状态通知
    • 错误告警

技术栈

  • 运行环境:Node.js + TypeScript
  • 框架:Express.js
  • AI 服务:DeepseekAI
  • 数据源:
    • Twitter/X API
    • FireCrawl
  • 定时任务:node-cron
  • 模板引擎:EJS
  • 开发工具:
    • nodemon(热重载)
    • TypeScript
    • Jest(测试)

项目结构

src/
├── controllers/     # 控制器层,处理请求
├── data-sources/    # 数据源配置
├── publishers/      # 发布器实现
├── scrapers/        # 数据采集实现
├── services/        # 业务逻辑层
├── summarizer/      # AI 总结实现
├── templates/       # 文章模板
└── utils/           # 工具函数

快速开始

环境要求

  • Node.js (v14+)
  • npm 或 yarn
  • TypeScript
  • Docker(可选,用于容器化部署)

安装步骤

  1. 克隆项目:

    git clone https://github.com/OpenAISpace/ai-trend-publish.git
    cd ai-trend-publish
    
  2. 安装依赖:

    npm install
    
  3. 配置环境变量:

    复制 .env.example 文件为 .env,并根据需要修改配置。

  4. 启动项目:

    npm run dev
    

开源协议

本项目采用 MIT 许可证,欢迎自由使用和二次开发。

如需了解更多信息,请访问项目仓库:https://github.com/OpenAISpace/ai-trend-publish