by miantiao-me
一个基于 AI 的 Hacker News 中文播客项目,每天自动抓取 Hacker News 热门文章,通过 AI 生成中文总结并转换为播客内容。
# Add to your Claude Code skills
git clone https://github.com/miantiao-me/hacker-podcast一个基于 AI 的 Hacker News 中文播客项目,每天自动抓取 Hacker News 热门文章,通过 AI 生成中文总结并转换为播客内容。
预览地址: https://hacker-podcast.agi.li
订阅地址: RSS | Apple Podcasts | YouTube | 小宇宙 | Spotify
项目由一个 Worker 和 Web 程序组成,Worker 负责抓取数据,处理音频。使用了 Cloudflare 的 R2 存储、 KV 存储、工作流和浏览器呈现。 Web 程序负责展示数据和提供 RSS 订阅。Web 程序使用 vinext 开发,通过 Cloudflare Vite 插件部署到 Workers。
No comments yet. Be the first to share your thoughts!
pnpm install
# .env.local
NODE_ENV=development
NEXT_STATIC_HOST=http://localhost:3000/static
# worker/.env.local
NODE_ENV=development
HACKER_PODCAST_WORKER_URL=https://you-worker-url
HACKER_PODCAST_R2_BUCKET_URL=https://your-bucket-url
OPENAI_API_KEY=your_api_key
OPENAI_BASE_URL=https://api.openai.com/v1
OPENAI_MODEL=gpt-4.1
# 开发工作流
pnpm dev:worker
# curl -X POST http://localhost:8787 # 手动触发工作流
# 开发 Web 页面
pnpm dev
注意:
- 本地运行工作流时,Edge TTS 转换音频可能会卡住。建议直接注释该部分代码进行调试。
- 由于合并音频需要使用 Cloudflare 的浏览器端呈现,不支持本地开发,需要远程调试。可以使用
pnpm tests进行测试。
项目使用 Cloudflare Workers 部署:
NEXT_STATIC_HOST 和 HACKER_PODCAST_R2_BUCKET_URL 变量。wrangler.jsonc 中 KV 和 R2 的值wrangler 脚手架配置线上环境的环境变量:# 更新 Worker 的私有变量
pnpx wrangler secret put --cwd worker HACKER_PODCAST_WORKER_URL # 绑定域名后,修改为绑定域名
pnpx wrangler secret put --cwd worker HACKER_PODCAST_R2_BUCKET_URL
pnpx wrangler secret put --cwd worker OPENAI_API_KEY
pnpx wrangler secret put --cwd worker OPENAI_BASE_URL
pnpx wrangler secret put --cwd worker OPENAI_MODEL
# 更新 Web 程序的私有变量
pnpx wrangler secret put NODE_ENV # 建议 production
pnpx wrangler secret put NEXT_PUBLIC_BASE_URL # Web 服务地址
pnpx wrangler secret put NEXT_STATIC_HOST # 绑定域名后,修改为绑定域名
# 记得恢复注释:wrangler.jsonc 中的 workflows 相关配置
pnpm deploy:worker
pnpm run deploy
特别感谢以下开源项目:
欢迎提交 Issue 和 Pull Request!
[!TIP]
MiniMax-M2.1 是开源的业界顶尖编程模型,在多语言代码编写、界面设计理解与美学表达、长文本处理及多步骤复杂开发任务上表现卓越。让我们向通用生产力的长期愿景迈出了坚实一步,让人人都能轻松用上前沿的 AI 能力。点击领取 MiniMax CodingPlan 专属 88 折优惠。
本项目与 Hacker News 和 Y Combinator 没有任何关联。"Hacker News" 是 Y Combinator 的注册商标。