NewsNow:把微博、知乎、36氪等 40+ 热榜聚成一屏的实时新闻阅读器(附自建教程)

NewsNow:把微博、知乎、36氪等 40+ 热榜聚成一屏的实时新闻阅读器(附自建教程)

NewsNow 项目封面:红色方标与项目名
NewsNow —— 把多个平台的热榜聚成一屏,按时间流优雅地读

想快速看完今天中文互联网的热点,是不是得在微博、知乎、36氪、IT之家、V2EX、少数派……之间来回切?每个平台一套热榜、一堆广告、各自的推荐算法,刷完一圈早就没了耐心。NewsNow 做的事很朴素:把这些平台的热榜聚成一屏,用一条按时间排序的信息流,让你安静地把热点读完。

它是完全开源的(MIT 协议),在 GitHub 上有 2.18 万 Star,用 TypeScript 编写,最新版本 v0.0.42。官方有一个在线演示站可以直接体验,也支持你 fork 下来自建——甚至能免费部署到 Cloudflare Pages,或用 Docker 一条命令跑起来。

一、NewsNow 是什么?

一句话:NewsNow 是一个实时新闻 / 热榜聚合阅读器。它在服务端定时抓取各个平台的公开热榜,再在前端用清爽的列式界面按时间流展示出来。

需要先厘清一个边界:NewsNow 自己不生产内容,它只是把各平台的公开榜单搬进同一个界面。所以它更像一个“热榜的阅读器”,而不是新闻源——点开某条内容,仍然会跳回原站点。

  • 官方在线演示:newsnow.busiyi.world(建议先体验,再决定要不要自建)
  • 技术栈:TypeScript + Vite 前端、Nitro 服务端,数据库主推 Cloudflare D1
  • 许可:MIT(可自由自建、修改、二次分发)

二、它聚合了哪些信息源?

这是 NewsNow 最实在的地方。打开源码的 server/sources,能看到约 40 多个数据源适配器,覆盖了中文互联网日常刷的绝大多数榜单:

分类 代表性信息源
综合资讯 微博、知乎、百度、今日头条、澎湃新闻、参考消息、联合早报、少数派、虫部落
科技 / 开发 V2EX、36氪、IT之家、掘金、GitHub、Hacker News、Product Hunt、Solidot、Linux.do、果核剥壳
财经 财联社、华尔街见闻、金十数据、格隆汇、雪球、FastBull、MktNews
社区 / 兴趣 虎扑、豆瓣、懂球帝、牛客、什么值得买、酷安
视频 / 娱乐 哔哩哔哩、抖音、快手、腾讯视频、爱奇艺、Steam

而且这些源的结构定义得很清晰,README 也鼓励你自己动手加:想加一个自己的源,照着现有的写就行。

NewsNow 的信息源切换面板,列出 GitHub、36氪、知乎、豆瓣、抖音等大量源
界面右上角的源切换面板:40+ 个信息源可按需勾选关注

三、和“在十几个 App 里来回刷热榜”比,差在哪?

直接对比一下使用场景,比堆功能清单更直观:

你的需求 NewsNow 怎么做 要注意
一屏看完今天全网热点 40+ 源并排,按时间流统一读 首次加载部分源需要等待抓取
只想盯几个固定源 自定义关注的源,其余收起 —
手机 / 碎片时间看 响应式布局,支持 PWA 安装到桌面 —
不想被推荐算法和广告喂 页面上只有榜单内容 内容仍来自原平台,点开跳转原站
给自己或小团队搭一个 自建部署,数据自己掌握 见下一节
NewsNow 阅读界面:深色主题下并排展示 V2EX、微博、IT之家、财联社、Hacker News、联合早报的热榜
阅读界面:深色主题、列式布局,一屏容纳多个来源的实时热榜

说句实在的:如果你平时只刷一两个平台,直接开对应 App 就够了。NewsNow 的价值在于“多源 + 共存一屏”——源越多,它越省事。

四、“官网不是能直接用吗,为什么还要自建?”

这是很多人第一反应。答案取决于你的使用强度:

  • 官方演示站的局限:依赖作者的服务器,高峰期可能拥堵或限流;默认缓存 30 分钟;有哪些源由项目决定,你无法自行增删。
  • 自建的好处:可以加自己的源、数据与账号完全自己掌握、能给团队共用、也不怕官方实例哪天关停。

所以结论很直接:只是偶尔看看,用官方演示站就够;想长期用、想加源、要稳定访问,就自建。

五、怎么部署?三种方式任选

方式一:Docker(最省事)。在项目根目录执行一条命令即可:

docker compose up

环境变量直接写在 docker-compose.yml 里。

方式二:Cloudflare Pages + D1(作者主推,可白嫖免费额度)。

  1. Fork 仓库,导入到 Cloudflare Pages;
  2. 构建命令 pnpm run build,输出目录 dist/output/public;
  3. 在 Cloudflare 控制台创建 D1 数据库,把 database_id 与 database_name 填进 wrangler.toml(没有该文件就把 example.wrangler.toml 改名)。

方式三:Vercel。基础部署(不需要登录与缓存)可直接导入;若要启用数据库,需要你自行解决适配。

想启用 GitHub 登录与数据同步(可选),去创建一个 GitHub App,回调地址填 https://你的域名/api/oauth/github,拿到 Client ID 与 Secret 即可。环境变量参考如下:

G_CLIENT_ID=          # GitHub Client ID
G_CLIENT_SECRET=      # GitHub Client Secret
JWT_SECRET=           # 通常就用 Client Secret
INIT_TABLE=true       # 首次运行必须为 true,之后可关闭
ENABLE_CACHE=true     # 是否启用缓存

本地开发则需要 Node.js 20 以上:

corepack enable
pnpm i
pnpm dev

六、顺手接进 AI 工作流:MCP server

NewsNow 还提供了 MCP server,可以让支持 MCP 的 AI 客户端(如 Claude 等)直接读取你的热榜数据。在客户端配置里加一段即可,BASE_URL 换成自己的域名:

{
  "mcpServers": {
    "newsnow": {
      "command": "npx",
      "args": ["-y", "newsnow-mcp-server"],
      "env": { "BASE_URL": "https://newsnow.busiyi.world" }
    }
  }
}

七、常见问题(FAQ)

NewsNow 免费吗?

项目本身是 MIT 开源的,自建不花钱;部署到 Cloudflare Pages + D1 也能用免费额度。官方演示站同样免费可用。

一定要自己有服务器吗?

不一定。Cloudflare Pages 方式几乎零成本;也可以用 Docker 跑在自己的电脑或任意服务器上。

数据会存到哪里?

页面展示的内容来自各平台公开榜单;你的登录态、关注设置等存在你自己的数据库里(如 Cloudflare D1),不经过第三方。

抓取会不会被封、有没有版权问题?

项目用“动态抓取间隔(最快每 2 分钟、按源更新频率调整)”来降低被封风险;内容来自各平台公开热榜,建议仅供个人阅读,商用或大量转载请遵守各源站条款。

它和本站早前介绍的 NewsNow 是同一个吗?

是同一个项目,但仓库地址已经搬迁:从 ourongxing/newsnow 迁到了 newsnext/newsnow。站内旧文见下方“相关阅读”。

八、使用边界与注意事项

  • 内容来自第三方公开榜单,仅供个人阅读;商用或大范围转载前,请核对各源站的使用条款。
  • 抓取频率有限制(最快每 2 分钟一次/源),公开实例在高峰期可能拥堵,自建会更稳。
  • 重要提醒:作者已宣布 NewsNext(下一代 NewsNow)即将到来,并明确当前版本不再接受新的代码贡献。也就是说当前版本趋于稳定、适合直接部署使用,但别指望它马上加新功能——想跟进后续,可关注 README 里的新版本等待名单。
  • 默认缓存 30 分钟;登录用户可手动强制刷新。

九、项目地址与相关阅读

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发
头像-二楼后座
欢迎您留下宝贵的见解!
提交
头像-二楼后座

昵称

取消
昵称表情代码图片快捷回复

    暂无评论内容