### —— 一款极致优雅、实时抓取全球热点的开源新闻阅读器深度评测与全景解析

> 想象一下:你清晨推开窗,咖啡还没来得及入口,世界就已经把过去两分钟里最值得知道的八卦、爆炸、科学突破和政策地震,全都排着队送到你眼前,而且还用最舒服的排版、最丝滑的加载速度、最不打扰的推送方式——这就是 **NewsNow** 带给人的第一感觉:它不是在“看新闻”,而是在“优雅地偷窥全世界”。
---
### 🌍 **从一个想法到现实:NewsNow 的诞生故事**
在信息爆炸的时代,我们每天被成千上万条推送轰炸,却越来越难找到真正“值得读”的内容。作者 ourongxing(一位低调却极度硬核的全栈开发者)显然受够了传统新闻 App 的臃肿、广告、算法茧房和“标题党”。
于是他用最纯粹的极客方式,给出了自己的答案:
**“我要一个极简、极快、极漂亮、还能实时抓取热点的新闻阅读器,而且必须是开源的。”**
这就是 NewsNow 的起源——一个从零开始、完全自研的实时热点聚合平台。目前 DEMO 版本已经星标破万,成为 2025 年最受关注的前端开源项目之一。
---
### 🔥 **核心亮点:为什么它能让你“一秒上瘾”?**
#### 1. 🕰️ **真正的“实时”:最快每 2 分钟更新一次**
不同于大多数聚合类应用“一天一更”甚至“几小时一更”,NewsNow 实现了:
- 根据不同来源的更新频率**动态调整抓取间隔**
- 热点源(如微博热搜、 Hacker News、V2EX 最热)最快 **120 秒** 刷新一次
- 智能防反爬机制,避免被封 IP(这点真的绝了)
> 作者用一句话总结:“我宁可慢 10 秒,也不愿意明天就爬不动了。”
#### 2. 🎨 **优雅到骨子里的阅读体验**
打开页面那一刻,你就知道这不是普通的新闻聚合站:
- 极简 Material You 风设计,自动适配深浅色模式
- 卡片式瀑布流 + 精美字体排版(思源黑体 + Inter)
- 每一篇新闻都自动提取首图、摘要、来源和发布时间
- 阅读时自动隐藏导航栏,全屏沉浸式体验
- 内置“稍后阅读”和“一键复制标题+链接”
它不是在给你“喂新闻”,而是在邀请你“品尝”信息。
#### 3. 🔄 **缓存与实时性的完美平衡**
默认缓存 30 分钟,但登录用户可以:
- 一键强制刷新(右上角小闪电按钮)
- 数据云端同步,换设备无缝继续阅读
> 这意味着:不登录时极快(全静态 CDN),登录后极新(实时同步),鱼与熊掌兼得。
#### 4. 🛡️ **GitHub 登录 + JWT 认证,丝滑又安全**
只需两步:
1. 点击 GitHub 登录
2. 授权后即完成(无需任何权限!)
后台使用 JWT + Cloudflare D1 数据库,实现:
- 阅读历史同步
- 强制刷新权限
- 未来个性化推荐的基础
---
### 🛠️ **技术栈:一场现代前端技术的狂欢**
| 技术 | 版本/说明 | 为什么选它? |
|---------------|------------------------------------------|-------------------------------------------|
| Nuxt 3 | 最新版(App Router + Nitro Server) | 服务器渲染 + 全静态导出,两全其美 |
| Vue 3 | Composition API + `<script setup>` | 极致开发体验 |
| UnoCSS | 原子化 CSS + 极致主题定制 | 比 Tailwind 更轻更快更可控 |
| Pinia | 状态管理 | 轻量、类型友好 |
| Cloudflare Pages + D1 | 无服务器数据库 + 全球 CDN | 免费、极快、开箱即用 |
| MCP Server | newsnow-mcp-server | 支持 AI 客户端(如 Cursor、Windsurf)调用 |
最绝的是:**整个项目可以在 Cloudflare Pages 上完全免费部署**,零服务器成本!
---
### 🚀 **一键部署指南:10 分钟上线你的专属热点站**
#### 方法一:最懒人部署(推荐 99% 用户)
1. 点右上角 Fork 本仓库
2. 登录 [Cloudflare Pages](https://pages.cloudflare.com/)
3. 新建项目 → Connect to Git → 选择你 Fork 的仓库
4. 构建命令填写:`pnpm run build`
5. 输出目录填写:`dist/output/public`
6. 保存并部署
**完毕!** 你的专属实时热点站上线!
#### 方法二:带登录 + 数据库(完整版)
需要额外配置:
- 创建 GitHub OAuth App(无需任何权限)
- 创建 Cloudflare D1 数据库
- 配置环境变量(见下文)
- 使用 Docker 或 Wrangler 部署
```env
G_CLIENT_ID=你的GitHub Client ID
G_CLIENT_SECRET=你的GitHub Client Secret
JWT_SECRET=随便填一串复杂的(建议直接用 Client Secret)
INIT_TABLE=true # 第一次部署必须为 true
ENABLE_CACHE=true # 建议开启
```
Docker 一键启动:
```bash
docker compose up -d
```
---
### 📊 **数据源揭秘:它到底抓了些什么?**
目前已接入(部分):
- 微博热搜(实时)
- 知乎热榜
- 36氪热点
- Hacker News 前 30
- V2EX 最热主题
- 少数派最新文章
- 百度热点
- 抖音热搜(即将上线)
所有来源都在 `shared/sources` 和 `server/sources` 目录,结构清晰,支持一键添加新源。
> 项目结构之优雅,让人泪流满面:
```
shared/sources/ ← 前后端共享的源定义
server/sources/ ← 服务端抓取逻辑
composables/useSource.ts ← 前端统一调用
```
---
### 🗺️ **未来路线图(官方已公开)**
作者在 README 中画了三条大饼,目前进度:
- [ ] 多语言支持(英语优先,预计 2025 Q1)
- [ ] 个性化推荐(基于分类 + 阅读行为)
- [ ] 保存文章、标签分类、RSS 输出
- [ ] 暗黑模式深度优化
- [ ] PWA + 离线阅读
- [ ] 移动端 App(可能基于 Tauri 或 Capacitor)
---
### 💡 **为什么这个项目能火?深度分析**
1. **抓住了“实时性”这个痛点**
现有聚合站要么更新慢,要么全是垃圾信息。NewsNow 做到了“又快又准又干净”。
2. **极致的部署体验**
Cloudflare Pages + D1 + GitHub OAuth,整套方案免费且丝滑,普通人也能 10 分钟拥有一个酷站。
3. **代码极度优雅**
任何稍微懂点前端的人看一眼代码都会感叹:“这也太整洁了吧!”
4. **社区效应**
项目自带“赞赏码 + HelloGitHub 推荐”,形成病毒式传播。
---
### 🎁 **彩蛋:它还支持 MCP Server!**
这是最硬核的部分!
你可以在任意支持 MCP 的 AI 客户端(如 Cursor、Windsurf、SiliconFlow)中配置:
```json
{
"mcpServers": {
"newsnow": {
"command": "npx",
"args": ["-y", "newsnow-mcp-server"],
"env": {
"BASE_URL": "https://你的域名"
}
}
}
}
```
配置完成后,你就可以直接对 AI 说:
> “给我看看现在全世界最热的 10 条新闻”
AI 就会实时调用你的 NewsNow 实例,返回最新热点!
这相当于**给自己装了一个私人情报中枢**。
---
### 📝 **结语:这是一个属于极客的浪漫时代**
NewsNow 不仅仅是一个新闻聚合工具,
它更像是一场对“信息获取方式”的温柔革命:
- 它拒绝算法绑架
- 它拒绝广告污染
- 它拒绝臃肿低效
- 它用最纯粹的技术,实现了最优雅的信息传递
当你打开 NewsNow,看到全球热点像流水一样安静地更新,
那一刻你会明白:
**原来“关注世界”这件事,也可以如此安静、纯粹、且充满美感。**
---
### 参考文献
1. ourongxing. (2025). NewsNow - 优雅地阅读实时热门新闻. GitHub Repository. https://github.com/ourongxing/newsnow
2. NewsNow 官方文档及部署指南(本文核心资料来源)
3. Cloudflare Pages + D1 官方文档 https://developers.cloudflare.com/pages/
4. Nuxt 3 官方文档 https://nuxt.com
5. UnoCSS 官方文档 https://unocss.dev
---
**星标地址(强烈推荐一键三连)**:
https://github.com/ourongxing/newsnow
这不是一个普通的开源项目,
这是一个让你重新爱上“阅读新闻”这件事的浪漫之作。
去 Fork 它,部署它,让全世界都知道:
**优雅,从来不是奢侈品,而是态度。** ✨
登录后可参与表态
讨论回复
1 条回复
QianXun (QianXun)
#1
02-17 13:01
登录后可参与表态