我打造了一个聚合30+个 IT 新闻来源的平台,让你无需逐一查看

发布: (2026年4月2日 GMT+8 08:54)
5 分钟阅读
原文: Dev.to

Source: Dev.to

请提供您希望翻译的完整文本内容,我将按照要求保留来源链接、格式和代码块,仅翻译正文部分。

🤔 问题

作为一名在韩国的开发者,我每天早上花了太多时间浏览:

  • 韩国科技博客(Kakao、Toss、Woowa Brothers、Naver、Line)
  • IT 新闻网站(ZDNet Korea、IT Donga、Digital Times)
  • 国际科技媒体
  • YouTube 科技频道

我想要一个统一的地方来阅读所有内容。于是我自己搭建了它。

🚀 介绍 한눈IT (HanunIT)

한눈IT 在韩语中意为“IT 一目了然”。它是一个内容聚合平台,收集、摘要并提供最新的 IT 文章和视频,提供清爽的阅读体验。

✨ 关键特性

📰 文章聚合

持续通过 RSS 源从 30+ 来源收集文章。新内容全天不断流入——无需手动策划。

📝 AI 驱动的摘要

每篇文章都配有简明摘要。几分钟内浏览数十篇文章,只深入阅读对你重要的内容。

🌐 翻译文章

国际技术文章会自动翻译成韩语,帮助韩语开发者跨越语言障碍。

🎬 技术视频策展

精选的 YouTube 技术视频与文字文章一起收集。根据心情在阅读和观看之间切换。

💬 社区功能

对文章发表评论,点赞收藏,与其他开发者参与讨论。

📧 新闻通讯

订阅每周汇总,将精选文章直接发送到你的收件箱。

🛠️ 技术栈

层级技术
框架Next.js 15 (App Router, Turbopack)
语言TypeScript
数据库Supabase (PostgreSQL + RLS)
认证Supabase Auth
状态管理TanStack Query + Zustand
样式Tailwind CSS + Shadcn UI
部署Vercel
分析Vercel Analytics

📐 架构亮点

  • 服务器端渲染与缓存 – 文章页面使用 revalidate = 300 进行 ISR。API 路由返回 s‑maxage=300, stale‑while‑revalidate=600 响应头,实现快速的首次加载且无需每次都访问数据库。

    // Example in a Next.js page
    export const revalidate = 300; // ISR: revalidate every 5 minutes
  • 并行数据获取 – 文章详情页使用 Promise.allSettled 同时发起多个 Supabase 查询,而不是顺序 await,加载时间约缩短 40 %。

    const results = await Promise.allSettled([
      supabase.from('articles').select(),
      supabase.from('comments').select(),
    ]);
  • 智能客户端缓存 – TanStack Query 设置 5 分钟的 stale 时间和 30 分钟的垃圾回收。用户在页面之间切换时几乎看不到加载指示器。

  • 按请求去重 – 在服务器组件中使用 React.cache() 获取文章数据,使 generateMetadata 与页面组件共享同一份数据,避免重复的数据库请求。

    const fetchArticle = React.cache(async (id) => {
      const { data } = await supabase
        .from('articles')
        .select()
        .eq('id', id)
        .single();
      return data;
    });

📸 截图

HanunIT screenshot

🤷 我学到的

  • RSS 订阅源很混乱 – 每个来源的格式都有细微差别。我在解析边缘情况上花的时间比预期的要多。
  • Supabase RLS 功能强大但棘手 – 行级安全策略需要提前仔细规划。调试权限错误并不有趣。
  • Next.js 15 App Router 很棒 – 服务器组件 + 流式传输 + ISR 是内容密集型站点的可靠组合。

🙏 欢迎反馈

我很想听听:

  • 您希望添加哪些 IT 资源?
  • 您有什么 UX 改进建议吗?
  • 您会在本地技术生态系统中使用类似的东西吗?

感谢阅读!留下评论或访问查看。

0 浏览
Back to Blog

相关文章

阅读更多 »

新 Rentgen 发布 v1.20.0 🚀

发布 v1.20.0 🚀 - 项目导出/导入主要功能 无需账户。无需云端。数据不离开你的机器。 导出你的项目 → 获取文件 → 放到任何地方。