橘鸦 AI 日报前端 (juya-daily) 研究计划

notes/digests/juya-daily-research.md

Port 8777
path
notes/digests/juya-daily-research.md
# 橘鸦 AI 日报前端 (juya-daily) 研究计划 **创建时间:** 2026-03-15 晚上 **标签:** #项目研究 #Next.js #AI 日报 #开源项目 --- ## 📌 项目信息 | 项目 | 内容 | |------|------| | **仓库** | [ViggoZ/juya-daily](https://github.com/ViggoZ/juya-daily) | | **在线演示** | [viggoz.github.io/juya-daily](https://viggoz.github.io/juya-daily/) | | **内容源** | [imjuya/juya-ai-daily](https://github.com/imjuya/juya-ai-daily) | | **许可证** | ISC | --- ## 🎯 项目定位 **橘鸦 AI 日报的多主题阅读前端** — 提供更舒适的日报阅读体验 **核心特点:** - 实时内容 — 通过 GitHub API 直接读取原仓库 Markdown,无需同步 - 6 套主题 — 每套独立排版风格 - 完全静态 — Next.js 静态导出,GitHub Pages 部署 --- ## 🎨 6 套主题 | 主题 | 风格 | 特点 | |------|------|------| | **经典 (Editorial)** | 温暖纸张色调 | Playfair Display 衬线标题 | | **极简 (Mono)** | 纯黑白 | 系统字体,零装饰 | | **沙丘 (Dune)** | 沙漠金棕 | DM Sans 几何无衬线 | | **蓝图 (Blueprint)** | 工程蓝白 | IBM Plex 等宽标题 | | **墨夜 (Ink)** | 深色模式 | 大字号宽行距 | | **霓虹 (Cyber)** | 赛博终端 | 等宽字体,霓虹色 | --- ## ✨ 功能特性 - [ ] **实时内容** — GitHub API 读取,原仓库更新后刷新即可 - [ ] **日历选择** — 弹窗日历切换往期日报 - [ ] **文章目录** — 浮动按钮快速跳转 - [ ] **阅读进度** — 顶部进度条实时显示 - [ ] **标题追踪** — 滚动时显示当前阅读文章标题 - [ ] **移动端适配** — 响应式布局 --- ## 🛠️ 技术栈 | 技术 | 版本 | 用途 | |------|------|------| | **Next.js** | 16 | 静态导出 | | **React** | 19 | UI 框架 | | **Tailwind CSS** | 4 | 样式 | | **react-markdown** | - | Markdown 渲染 | | **remark-gfm** | - | GFM 扩展 | | **next-themes** | - | 主题切换 | | **部署** | GitHub Pages | 静态托管 | --- ## 📋 今晚研究计划 ### 1. 代码结构分析 - [ ] 查看项目目录结构 - [ ] 理解 Next.js 16 静态导出配置 - [ ] 分析主题切换实现 (next-themes) ### 2. 核心功能研究 - [ ] GitHub API 实时读取 Markdown 的实现 - [ ] 6 套主题的样式隔离方案 - [ ] 日历组件与往期日报切换 - [ ] 阅读进度条实现 - [ ] 滚动标题追踪逻辑 ### 3. 部署流程 - [ ] GitHub Actions 自动构建配置 - [ ] GitHub Pages 部署设置 - [ ] 静态文件输出 (`out/` 目录) ### 4. 可借鉴点 - [ ] 是否可用于其他日报/博客项目 - [ ] 主题系统设计思路 - [ ] 零内容存储的架构优势 --- ## 🔧 本地运行 ```bash # 克隆项目 git clone https://github.com/ViggoZ/juya-daily.git cd juya-daily # 安装依赖 npm install # 开发模式 npm run dev # 访问 http://localhost:3000/juya-daily # 构建 npm run build # 静态文件输出到 out/ ``` --- ## 💡 研究问题 1. **内容获取:** 如何通过 GitHub API 读取远程 Markdown?有缓存策略吗? 2. **主题系统:** 6 套主题如何组织?CSS 变量还是独立样式文件? 3. **性能优化:** 静态导出后首屏加载速度如何? 4. **扩展性:** 如果要添加新主题,需要修改哪些文件? 5. **SEO:** 静态导出对 SEO 的影响? --- ## 📝 研究输出 - [ ] 项目架构分析笔记 - [ ] 核心实现代码片段整理 - [ ] 可复用的主题系统方案 - [ ] 部署配置模板 --- **备注:** 这是一个优雅的单页应用设计,零内容存储 + 实时读取 + 多主题,值得深入学习。