现在是 2026 年 1 月 9 日,凌晨。
刚刚把 ZEN 改名成了 CZON。实现了 AI 生成永久链接的功能,删除了以前的 SHA-256 哈希链接 URL 方案。 并且还做了 404.html 页面来重定向到首页的逻辑。
之前与 Thrimbda 的讨论中,我在纠结自定义主题的实现方式,使用传统的模板语言例如 Handlebars 还是直接使用 JSX 组件来实现。Handlebars (以及其他同类产品,例如 EJS, Jinja 等等) 都属于传统模板语言,优点是简单易用,缺点是功能有限,扩展性不强,天花板较低。而使用 JSX 组件来实现自定义主题,则可以充分利用 React 生态系统的优势,拥有更强的灵活性和扩展性,天花板较高,但学习曲线较陡峭。
不过这年头,都用 AI 直接生成了,还学啥模板语言?似乎没有意义了。也就 debug 的时候需要看一下代码而已。

使用 JSX 组件来实现,存放 JSX 组件的文件夹又应该是哪?想来也只能放在 .czon 目录下面了,例如 .czon/themes 目录下面。这样用户就可以直接在 .czon/themes/{theme-name} 目录下面创建自己的主题组件了。
我认为我的技术选择还是偏向于新潮的方向,毕竟 ZEN/CZON 主要面向的是个人用户和小型团队,他们更倾向于使用现代化的技术栈来构建和管理他们的知识库。
那么就决定是 JSX 了!主题用 JSX 一搞,到时候在 CZON CLI 里直接调用 renderToString 就行了。
下一个问题接踵而至,数据层如何设计?主题如何访问框架的数据?主题如何管理、发布和安装?
目前还有许多问题等待解决,但我觉得方向已经比较明确了,边走边改吧。