综合介绍
Audibit 是一个开源项目,核心功能是将 Hacker News、TechCrunch 等热门科技文章自动转为音频播客,让用户在通勤、健身或忙碌时通过 Web 端或移动端收听资讯。项目使用 Next.js 和 React 开发前端,结合 OpenAI 和 Lemonfox 的文本转语音技术生成高质量音频。Audibit 支持零配置快速上手,内容通过 GitHub Action 定时更新,部署在 Netlify 上。用户可自定义文章源,社区可通过 GitHub 贡献代码。项目采用 AGPL-3.0 许可证,适合科技爱好者和开发者。
功能列表
- 自动抓取 Hacker News、TechCrunch、InfoQ、CoinDesk 等科技文章。
- 使用 OpenAI 和 Lemonfox 技术将文章转为高质量音频播客。
- 提供 Web 应用(
https://audibit.app
),支持即时收听。 - 支持 React Native 移动端应用,兼容 iOS 和 Android。
- 通过 GitHub Action 每日更新文章和音频,无需手动操作。
- 部署在 Netlify,简化托管流程。
- 开源代码,支持自定义文章源和功能扩展。
- 使用 Pinecone 和 Firestore 管理文章数据和搜索索引。
使用帮助
安装与部署
Audibit 是一个基于 GitHub 的开源项目,需具备基本开发技能以完成安装和部署。以下是详细步骤:
- 克隆仓库
使用 Git 克隆 Audibit 仓库到本地:git clone https://github.com/YinTokey/Audibit.git cd Audibit
- 安装依赖
确保已安装 Node.js,运行以下命令安装项目依赖:npm install
- 配置环境变量
在项目根目录创建.env
文件,添加以下内容:OPENAI_API_KEY=[your_openai_key] GOOGLE_SERVICE_ACCOUNT=[your_service_account_string] PINECONE_API_KEY=[your_pinecone_key] DB_NAME=Audibit
OPENAI_API_KEY
:从 OpenAI 官网获取,用于文本转语音。GOOGLE_SERVICE_ACCOUNT
:用于 Firestore 数据库,参考项目文档google_service.md
生成。PINECONE_API_KEY
:用于 Pinecone 索引,需与 Firestore 数据库名称一致(Audibit
)。- 确保在 Firestore 和 Pinecone 创建名为
Audibit
的数据库和索引。
- 本地运行
运行开发服务器,预览项目:npm run dev
访问
http://localhost:3000
查看 Web 应用。 - 构建与生产运行
构建生产版本并启动服务:npm run build npm run start
- 配置定时任务
Audibit 使用 GitHub Action 自动抓取文章。编辑.github/workflows/cron_job.yml
,设置每日抓取时间,详细说明见cron_job.md
。 - 部署到 Netlify
- 登录 Netlify,创建新站点。
- 连接 GitHub 仓库,选择 Audibit 项目。
- 设置构建命令为
npm run build
,发布目录为.next
。 - 部署完成后,参考
deployment.md
优化配置。 - 部署站点可通过
https://audibit.app
访问。
- 移动端应用
Audibit 提供 React Native 移动应用,仓库地址:git clone https://github.com/YinTokey/audibit-mobile.git
- 安装 React Native 环境,运行
npm install
。 - 启动应用:
npx react-native run-android npx react-native run-ios
- 应用连接 Netlify 部署的 API,获取音频内容。
- 安装 React Native 环境,运行
操作主要功能
收听音频播客
- 访问
https://audibit.app
或打开移动端应用。 - 首页展示最新科技文章音频列表,来源包括 Hacker News、TechCrunch 等。
- 点击文章标题播放音频,支持暂停、快进、后退和下载。
- 移动端支持后台播放,适合通勤或健身场景。
- Web 端使用 Chakra UI 提供简洁界面,响应式设计适配不同设备。
自定义文章源
- 编辑
config/feeds.js
,添加新的 RSS 源,如:feeds: [ { name: 'Hacker News', url: 'https://news.ycombinator.com/rss' }, { name: 'TechCrunch', url: 'https://techcrunch.com/feed/' }, { name: 'Custom Feed', url: '[your_rss_url]' } ]
- 提交更改后,运行 GitHub Action 更新音频内容。
搜索与数据管理
- Pinecone 提供文章搜索功能,移动端支持关键词查询。
- 在 Firestore 控制台查看文章元数据,可手动删除或编辑。
- 定期检查数据库,确保数据同步和索引完整。
注意事项
- 保护 API 密钥,避免泄露在公开仓库。
- Netlify 免费套餐有流量限制,高频使用需升级。
- 移动端应用需兼容最新 iOS 和 Android 系统。
- 贡献代码需提交 Pull Request,遵循项目贡献指南。
- 项目使用 AGPL-3.0 许可证,修改代码需开源。
特色功能操作
零配置快速上手
- 用户无需复杂设置,访问
https://audibit.app
即可收听。 - GitHub Action 自动更新内容,用户只需关注收听体验。
高质量音频生成
- 结合 OpenAI 和 Lemonfox 的 TTS 技术,音频清晰且自然。
- 支持多语言文章转换,适合国际化用户。
社区驱动开发
- 用户可通过 GitHub 提交问题反馈、功能建议或代码改进。
- 关注开发者
@yintokey
的 X 账号,获取项目更新。
应用场景
- 通勤时获取资讯
用户在公交或地铁上通过 Audibit 移动端收听 TechCrunch 的最新文章,高效利用碎片时间。 - 开发者技术学习
程序员收听 Hacker News 的热门讨论,了解开源项目或编程趋势,激发开发灵感。 - 健身时的知识输入
用户在跑步或健身时通过耳机收听 InfoQ 的技术文章,兼顾锻炼与学习。 - 开源社区参与
开发者通过优化 Audibit 的 Next.js 前端或 React Native 应用,学习现代 Web 开发技术。
QA
- Audibit 支持哪些文章源?
默认支持 Hacker News、TechCrunch、InfoQ、CoinDesk,用户可自定义 RSS 源。 - 如何在本地运行项目?
克隆仓库,安装依赖,配置.env
文件,运行npm run dev
。 - 部署到 Netlify 需要付费吗?
Netlify 免费套餐支持个人部署,超出流量限制需付费。 - 音频质量如何?
使用 OpenAI 和 Lemonfox 的 TTS 技术,音频清晰,支持多语言。 - 如何贡献代码?
在 GitHub 提交 Pull Request,参考贡献指南,欢迎问题反馈和功能建议。