轻松部署到 GitHub Pages / Docker,希望能够一站式了解各个信息源的新鲜事。又嫌市面上产品太”重”(不想注册登录/下载 APP/启动桌面软件…),一个静态页面正合适(响应式 / 亮暗主题,电脑手机都方便浏览)。
🧠 项目定位与核心功能
FeedMe 是一款“AI 驱动的 RSS 聚合阅读器”,通过以下方式提升信息获取体验:
- 多源内容聚合:支持从多个 RSS 订阅源(如 Hacker News、GitHub Trending、Hugging Face Daily Papers 等)实时抓取内容
- AI 自动摘要:调用 LLM(如 OpenAI 模型)为每篇文章生成简洁摘要,呈现 TL;DR 风格阅读
- 定时自动更新:使用 GitHub Actions(每 3 小时触发)或本地 cron 实现内容定期抓取、摘要和网站构建
- 分类管理 & 主题切换:支持将不同 RSS 源按分类浏览,并切换亮/暗主题
- 静态部署友好:静态站点生成,可部署至 GitHub Pages 或 Vercel,也能通过 Docker 本地运行
🚀 部署方式
三种部署路径,灵活适应不同使用场景:
- GitHub Pages + Actions
- Fork 仓库后设置
LLM_API_KEY
,LLM_API_BASE
,LLM_NAME
等 secrets。 - 开启 Pages 服务,并推送或安排定时触发 Actions 自动构建部署
- Fork 仓库后设置
- Vercel 部署
- 将项目导入 Vercel 并配置
VERCEL_TOKEN
,VERCEL_ORG_ID
,VERCEL_PROJECT_ID
, 设置ENABLE_VERCEL_DEPLOYMENT=true
即可自动部署
- 将项目导入 Vercel 并配置
- Docker 容器部署
- 克隆项目、配置环境变量(如在
.env
中填写 LLM 相关),通过docker-compose up --build
启动服务,默认监听本地 3000 端口 。
- 克隆项目、配置环境变量(如在
⚙️ 配置详解
- RSS 源管理:编辑
config/rss-config.js
添加或修改订阅源(名称、URL、分类等) - 更新频率:在
.github/workflows/update-deploy.yml
的 cron 表达式中自定义更新时间 - 摘要数量:可通过
config/rss-config.js
的maxItemsPerFeed
控制每源保留条目数量。 - 自定义摘要逻辑:修改
scripts/update-feeds.js
中的prompt
,以调整摘要风格、语言或格式 - 部署路径适配:项目会自动识别部署平台(GitHub Pages、Vercel、自定义域名),调整静态资源 basePath 路径
🧩 技术栈
- 前端:Next.js + React + TypeScript
- 样式:Tailwind CSS + shadcn/ui
- 路由与部署:GitHub Actions、Vercel、Docker
- 数据获取与生成:RSS feeds + OpenAI 等 LLM
Repo 中关键文件包括 package.json
、next.config.mjs
、GitHub Actions 工作流、Docker 相关配置等,完备支持开发与运行
✅ 适用人群
- 喜欢 RSS 聚合但不想用重型 App 的用户。
- 需要阅读摘要抓重点、不想读全文。
- 想自托管、无第三方 App 登录依赖的静态站。
- 具备基本配置能力,可以调试 GitHub Secrets、cron 或 Docker。
📚 建议阅读/下一步
- Fork 一份试用体验:编辑自己想关注的 RSS 源,探索 AI 摘要是否符合你的阅读习惯。
- 若想增强功能,比如全文抓取、图片展示、关键词标记等,可继续在
scripts
或前端页面上扩展。 - 注意:目前项目中还未设置 SECURITY.md,提示安全政策空缺,若用于敏感场景建议注意安全配置(如 API key 管理、HTTPS)。