Skip to content
返回博客Back to blog

写作Writing

把 KizunaIndex 做成公共索引之后,我学到的几件事Lessons from Building KizunaIndex as a Public Index

公共索引真正有用,往往不是因为页面多复杂,而是因为内容模型足够小、足够清楚、足够容易改。A public index gets more useful when the content model is small, explicit, and easy to revise.

产品构建Product Building
2026年5月1日May 1, 20267 分钟阅读7 min readLinfeng Chen更新于 2026年5月3日Updated May 3, 2026
nextjs
data-modeling
public-index
mdx

KizunaIndex 一开始只是一个很简单的公共索引表面,但真正有意思的部分从来不只是那个页面,而是它背后的结构。

最重要的教训

真正撑住系统的,是那个小而清楚的 schema,而不是视觉层。一旦内容原子被说清楚,很多事都会更容易判断:

  • 什么算 source
  • 什么算 entry
  • 哪些内容需要 review
  • 哪些东西可以后面再生成

经得住使用的形状

Code
type Entry = { title: string; slug: string; summary: string; sourceLinks: string[]; status: "draft" | "ready" | "published"; };

为什么公开很有帮助

公共系统会逼着边界变清楚。
如果一个结构在别人眼里看起来很混乱,那它通常对构建者自己也同样混乱。正因为这样,KizunaIndex 对我来说不只是一个发布表面,它也是一次结构设计练习。

我会继续保留的东西

  1. 模型保持窄。
  2. 审阅步骤保持可见。
  3. 本地编辑优先。
  4. 在内容稳定后,再给 MDX 留更大的空间。

这个站点之所以成立,不是因为它特别聪明,而是因为它的模型一直能被人理解。这不算 glamorous,但通常比炫技更能长期扩展。

KizunaIndex started as a simple public surface for references, but the interesting part was never the index itself. It was the structure behind it.

The lesson

The small schema mattered more than the visual layer. Once the content primitives were clear, it became much easier to reason about:

  • What counts as a source
  • What counts as an entry
  • What needs review
  • What can be generated later

The shape that held up

Code
type Entry = { title: string; slug: string; summary: string; sourceLinks: string[]; status: "draft" | "ready" | "published"; };

Why public helps

Public systems force better boundaries. If a structure feels confusing when someone else sees it, it is usually confusing for the builder too. That made KizunaIndex useful as a design exercise, not just a publishing surface.

What I would keep

  1. Keep the model narrow.
  2. Keep the review step visible.
  3. Keep local editing first.
  4. Keep room for MDX when the content stabilizes.

The site works because the model stays understandable. That is not glamorous, but it scales better than cleverness.

相关工作Related work

和这篇笔记关联的项目与案例研究。Projects and case studies connected to this note.

项目Projects

Kizuna IndexKizuna Index

把分散的参考资料整理成一个可维护、可持续发布的索引表面。A living index that turns scattered references into a maintainable publishing surface.

产品product
AI 本地博客编辑器AI Local Blog Editor

一个面向技术写作的本地编辑与发布工作流,支持 AI 辅助起草与修订。A local editing workflow for drafting, revising, and publishing technical posts with AI assistance.

AI 系统ai-system

案例研究Case studies

把静态索引改造成可维护的 AI 辅助发布工作流Turning a Static Index into a Maintainable AI-Assisted Publishing Workflow

一个无需先上 CMS、却能让笔记、来源与草稿输出保持对齐的发布系统。A publishing system that keeps notes, sources, and draft output aligned without forcing a CMS.

独立产品项目Independent product build

相关文章Related posts

和这个主题相邻的更多笔记。More notes close to this topic.

为技术作品集网站设计真正有说服力的案例研究Designing Case Studies for Technical Portfolio Sites

精选Featured
产品构建Product Building
2026年5月5日May 5, 20266 分钟阅读6 min read更新于 2026年5月7日Updated May 7, 2026

怎样组织案例研究,才能证明判断力,而不只是展示结果。How to structure a case study so it proves judgment, not just output.

portfolio
case-study
writing
阅读全文Read article

用本地工具和云模型搭建个人 AI 工作台Building a Personal AI Workbench with Local Tools and Cloud Models

精选Featured
AI 工程AI Engineering
2026年5月8日May 8, 20268 分钟阅读8 min read更新于 2026年5月10日Updated May 10, 2026

一个实用的 AI 工作环境:能起草、测试和发布,又不会把流程缠在一起。A practical setup for drafting, testing, and shipping AI work without letting the workflow get tangled.

ai-agent
automation
codex
阅读全文Read article

用 Next.js、Vercel 和 Supabase 发布小型 Web 产品Shipping Small Web Products with Next.js, Vercel, and Supabase

部署Deployment
2026年4月18日April 18, 20265 分钟阅读5 min read更新于 2026年4月22日Updated April 22, 2026

当部署、数据和界面都足够好理解时,这套小产品栈才真正好用。A small product stack works best when deployment, data, and UI stay easy to reason about.

nextjs
vercel
supabase
阅读全文Read article