
React 核心团队成员开源 Pretext,仅几 KB 的纯 TypeScript 库,前端 UI 渲染速度比传统工具快约 500 倍,已获 2.8 万 Star
上个周末,一个前端开源项目在 GitHub 炸了。
Pretext 由 Midjourney 前端工程师、React 核心团队成员 Cheng Lou 开源,仅几 KB 大小的纯 TypeScript 库,前端 UI 渲染速度比传统工具快约 500 倍。
目前 Star 数已飙升至 2.82 万,官宣推文浏览量超 2100 万次。

传统网页测文字大小、位置要频繁读 DOM,非常慢还会卡。这是前端开发的老大难问题。
Pretext 的方案是:不靠 DOM 测量。
它会先对文本进行布局,再通过 getBoundingClientRect 粗略读取尺寸信息。作者认为,最大的性能提升,永远来自架构层面的变革。
同时放下几十万个高度各不相同的文本框,还能做到丝滑滚动、不卡顿,实现 120fps 流畅滚动与窗口缩放。

滑动时聊天框的宽度会紧紧贴合文字内容,不会撑满页面整行。

像杂志那样实现多栏布局,同时做到自适应屏幕、内容动态变化。

用英文字母、数字、标点符号拼出图案、人脸、风景、logo。

有开发者对比了使用 Pretext 和 DOM 对整本小说即时分页,要求每页都有预览:
强大的灵活性激发了开发者的创作热情,社交平台 X 上已掀起 Pretext 应用热潮。
知名歌曲 Bad Apple!! 的经典黑白影绘视频,开发者让歌词文本通过位移变形特效,拼出了人物、城堡的轮廓,且随音乐旋律丝滑变化。
3D 迷宫射击游戏《毁灭战士》的 ASCII 字符版:

文字版打砖块小游戏,砖块跳动时,页面上的大小文字都会随之流畅变形:

模拟水面波纹或声波传播的视觉效果:

Pretext 有两种使用场景:
在完全不接触 DOM 的前提下,测量一段文本的高度。
prepare():执行一次性工作(规范化空白字符、文本分段、应用连字规则),返回一个不透明句柄layout():基于缓存的宽度做纯数值计算避免对相同文本和配置重复调用 prepare(),窗口大小改变时,只需重新执行 layout() 即可。
将 prepare 替换为 prepareWithSegments,然后自行对段落进行分行排版。
传统方案依赖 DOM 读尺寸,需要强制浏览器重新计算整个页面布局,导致页面卡顿。
Pretext 采用自研文本测量逻辑,以浏览器自身的字体引擎作为真实基准,既保证了排版的精准度,又将渲染效率提升至新高度。
作者透露,Pretext 的实现是通过向 Claude Code 和 Codex 展示浏览器的真实基准,并让它们在每一个重要的容器宽度下进行测量和迭代,持续运行数周完成的。
这种创新架构天然适配 AI 迭代优化,为未来前端排版的智能化、自动化发展预留了巨大空间。
Pretext 将前端文本测量与布局,从浏览器 DOM 的传统方案升级为一套可预测、可缓存、高性能的方案,或为高性能、动态、AI 原生的下一代 UI 设计扫清障碍。

飞书正式开源 lark-cli,覆盖11大业务域、200+命令,支持 Claude Code、Cursor 等主流 AI 工具接入,GitHub 已获 5.5k stars

飞书开源 lark-cli,覆盖 11 大业务域、200+ 命令,支持 Claude Code、Cursor 等主流 AI 工具直接调用飞书能力,Star 数已达 5.5k

解密 Claude Code 核心开发者的实操秘籍。涵盖 /loop 自动运行、Worktree 并行开发及 Chrome 扩展验证等 15 个高阶技巧。