Three.js ASCII 渲染与 Vercel vgpu 棱镜效果开启视觉篇;Remix 3 RC 彻底脱离 React、pnpm 12 完成 Rust 重写、浏览器迎来邮箱验证 API;框架侧 Turbopack 分块策略、Mantine 9.6 与 GPUIX 各有看点;工具链 NestJS 12 转向 ESM 与 Rspack,srvx 1.0 用一套 fetch handler 通吃三大运行时。
🎨 HTML/CSS
超越亮度渐变:Three.js 中可感知形状的 ASCII 渲染器
把 Codrops 的标志重建为一个可拖拽的立体模型,并在 GPU 上以 ASCII 输出,其中每个字符单元都会在 95 个字形中搜索属于自己的那一个。
从光线到网格:用 vgpu 构建 Vercel 的棱镜效果
介绍 Vercel 的 vgpu 如何利用着色器、几何体、玻璃材质与自适应渲染,打造出高性能的棱镜效果。
更多 Three.js 讲者,更多来自巴黎的想法
来自首届 Three.js 大会的新讲者们分享了他们正在构建、试验的东西,以及他们将带到巴黎的内容。
弯曲、瞄准、弹射:用 Three.js 把埃菲尔铁塔变成投石机
一个好玩的 Three.js 实验,把埃菲尔铁塔变成投石机,将交互式物理与来自 Cesium ion 的真实世界 3D 数据结合起来,把你从巴黎上空弹射到 Three.js 大会现场。
Volatile Nexus:在 Three.js 中把玩玻璃、焦散、立方体与声音
一个令人着迷的 Three.js 实验,玻璃、游走的立方体、焦散、折射与声音在一个流动的交互式场景中汇聚在一起。
让我们在所有浏览器中使用新兴的 CSS random() 函数
为即将到来的 CSS random() 函数创建一个能在所有浏览器中工作的 polyfill 的历程。本文最初手写并发布在 CSS-Tricks 上,倾注了作者的心血。你真的也该订阅它的邮件通讯。
What’s !important #18:, 语法、::highlight() 高亮、named-feature() 及更多
那么,就到这里。不,不是 flex-wrap,而是今天标志着新的一天、一周、一月、一季,以及新一期的 What’s important(#18),为你带来过去几周左右开发者产出的最佳内容。What’s !important #18:, 语法、::highlight()
九月的诸多面孔(2026 壁纸特辑)
15 年多以来,我们的月度壁纸系列一直是各路创作者检验技艺的绝佳机会。你不必满足利益方或客户的要求;这一次,换你来,探索自己的想法并把它们变成现实,在 y
🟨 JavaScript/TypeScript
Remix 3 RC:一个不需要 React 的全栈框架
Remix 从昔日 React 框架到独立全栈框架的重大重写已基本完成。这篇文章的推介相当精彩,但更棒的是全新的主页,它解释了 Remix 如何提供“用单个包”构建现代 Web 应用所需的一切。
pnpm 12:用 Rust 重写,命令与锁文件保持不变
Rust 重写版已经稳定,v11 的几乎所有命令、参数和锁文件格式都沿用下来,只有少量改动。不过 npm 的 latest 标签仍指向 pnpm 11,所以你需要用 pnpm self-update next-12 来升级。
浏览器的新邮箱验证 API
介绍一项 WICG 提案,它让浏览器和邮件服务商使用一个由服务器在提交时校验的令牌,来消除“去查收你的收件箱”这个麻烦。目前仅限 Chrome 源试用和 Gmail。
Lovable 从 Next.js 迁移到 TanStack Start
Lovable 如何把一个约 85 万行代码的应用从 Next.js 迁移到 TanStack Start,期间通过代理让两者并行运行,并在它们之间共享一份代码目录。
我们在 React、Vue 和 Svelte 中构建数据表格学到了什么
SVAR 为 React、Vue 和 Svelte 提供同一套数据表格,并表示无论使用哪种框架,最关键、影响性能的要素都保持一致。
htmx 4.0:这个反 SPA 库两年来的首个大版本
这个仅靠 HTML 属性把 HTML 片段塞进页面的库,从 XMLHttpRequest 迁移到了 Fetch API。属性继承现在改为可选,事件已被标准化并重命名,morphing 交换和 hx-partial 是新特性。此外还有一份完整的 htmx 4 新特性指南。
Svelte Bits:面向 Svelte 的动画 UI 组件
React Bits(出自同一位作者)的 Svelte 移植版,那套流行的 React 动画组件合集。
TypeScript 已支持可感知 import 属性的环境模块
TypeScript 已支持可感知 import 属性的 ambient modules(环境模块)。诸如 declare module “*” with { type: “css” } 这样的声明,现在可以匹配携带该属性的 import 语句。
Dani Sandoval 盘点本月 Svelte 世界的新动态
Dani Sandoval 盘点了本月 Svelte 世界的新动态,包括 Svelte 5.57 新增的 SvelteMap 方法、SvelteKit 3 进入 RC,以及面向 sv CLI 的 ai-tools 插件。
Sarah Rainsberger 盘点本月 Astro 的新动态
Sarah Rainsberger 也盘点了本月 Astro 的新动态,包括 Matthew Phillips 接任“项目主管”(Project Steward),以及全新的 Astro Playground。
Rspack 2.2, Rsbuild 2.2, and Rslint 0.9
Rsbuild 带来更快的构建与 HMR、更短的模块 ID,并默认开启 Node.js chunk 拆分。值得一提的是,Rslint 现已实现 @typescript-eslint 的全部规则和预设。
Cypress 16
你的 Cypress 测试一直通过 HTTP/1.1 运行应用,而真实用户用的是 HTTP/2 —— Cypress 16 无需修改任何测试就弥合了这一差距,加载 1000 张图片的时间从 3896 毫秒降至 1362 毫秒。那个代理是在 HTTP/1.1 主导时代构建的,它六连接的限制也让上传进度、实时信息流这类 SSE 流特性实际上无法被测试。此版本还迁移到 Node.js 24、Electron 41 和 Chromium 146,移除了 Cypress.env() 以便让密钥不进入浏览器,并支持协商最多 100 条并发流。
Node.js v26.8.0(Current)
Node.js 26.8.0 把统计假设检验直接内置进 perf_hooks 的直方图,让运行时能告诉你那 5% 的提速是真实的还是只是多次运行之间的噪声。基准回归一向靠在共享 CI 机器上肉眼比对数字来判断,而 compare.js 新增的 --analyze 模式加上重写的直方图实现,旨在消除这种猜测。此版本还稳定了 TracingChannel,新增抗 nonce 误用的 SIV 与 GCM-SIV 加密模式、原生 ZipEntry/ZipFile/ZipBuffer 读取器、SQLite 语句上的 close() 与 Symbol.dispose、不抛错的 MIMEType.parse、更快的 net.BlockList,以及 REPL 语法高亮。
Schedule-X 4.7
适用于 React、Vue、Angular、Svelte 和 Preact 应用的大型日程式日历控件。
Cropper.js 2.2
一个成熟的图片裁剪控件,附带一个可以试玩的 playground。
noble-curves 2.4
经过审计的、极简的椭圆曲线密码学 JavaScript 实现。
精通仍来自“反复练习”
🤖 Addy Osmani 表示,精通仍来自“反复练习”,而让代理替你完成任务,意味着积累专业能力必须变成一件更需要刻意为之的事。
Lean
∑ Lean 这门用于编写机器校验数学证明的语言,其验证器“只是”一个类型检查器,所以这里改用 TypeScript 来演示这个概念!
预览中的新 Node.js 26 运行时
AWS Lambda 推出了一个新的 Node.js 26 运行时预览版。
现代 HTML 样板中应该包含的内容
详细审视了现代 HTML 样板中应该包含的诸多内容。
🧩 框架
Turbopack 如何对你的 JavaScript 分块
这篇文章解释了 Turbopack 如何对 Next.js 应用的 JavaScript 进行分块,以及用于调优该过程的(实验性)Next.js 16.3 选项。如果你专注于缩小客户端 bundle 体积,它会很有用。
Mantine 9.6:一次大型组件库更新
这个流行的组件库迎来重大更新,新增了灯箱(lightbox)组件、用于上下文批量操作的 ActionBar、四种全新图表类型(华夫图、矩阵图、仪表盘图和蜡烛图),以及更多内容。
GPUIX:用 React 构建 GPU 渲染的原生桌面应用
一次有趣的尝试:通过 Zed(对,就是那个 Rust 驱动的代码编辑器!)的 GPUI 框架来渲染 React 组件,从而以单个二进制文件创建原生桌面应用,不需要 Electron 或 webview。
Vitest 5.0 发布,在 React SPA 基准测试上快了约 15%
Vitest 5.0 已发布,在其 React SPA 基准测试中快了约 15%,并新增了内置的 trace 视图,让你可以在浏览器测试运行结束后回看整个执行过程。迁移指南涵盖了各项破坏性变更。
𝕏 TanStack 与 Vercel 联手,要让 Vercel 成为 TanStack Start 的“一等家园”
𝕏 TanStack 与 Vercel 正在联手,要让 Vercel 成为 TanStack Start 的“一等家园”,并以一份全新的部署指南作为起点。
面向 React 19.3 的 @types/react 更新草案预览了即将稳定化的内容
面向 React 19.3 的 @types/react 更新草案提供了一份预览(在这个 diff 中),展示哪些内容即将稳定化,包括 browser()、ViewTransition 和 Fragment refs。
Margelo 加入 Callstack,交易对这家公司的估值超过 2000 万欧元
Margelo 加入 Callstack,这笔交易对 Nitro Modules 和 VisionCamera 的创造者的估值超过 2000 万欧元。
Zod 4.5 来了
Zod 4.5 带来了可提前编译 schema 的 z.compile()、内存占用减少到九分之一的 schema,以及无需完整解析即可校验有效性的快路径。考虑到有多少 React 表单和 API 代码依赖 Zod,这值得研究一番。
Drydock
⚠️ 鉴于近期供应链蠕虫袭击了与 React 相关的软件包,Drydock 对包作者可能很有用:它会把你要发布的 tarball 与上一个已发布版本做 diff,从而发现悄悄混进去的恶意代码。
Bun 1.4 发布
在 Bun 1.4 发布的喧嚣中,你可能错过了 build 和 Bun.build 现在内置了 React 编译器,而 Bun.markdown.react() 提供了将 Markdown 转换为 React 元素的原生方式。
那些取代了 JavaScript 的原生 HTML 与 CSS 特性
这篇文章盘点了手风琴、对话框、弹出层以及各类效果,这些你可能已经不再需要额外的组件或依赖来实现。
用 Google Antigravity CLI 快速定制 Angular Aria 标签页
Angular 团队称 Angular Aria 是一套可定制、完全无障碍的 UI 模式。这个说法很响亮,但在实践中,要在保持键盘导航和焦点管理等无障碍特性的同时对组件进行重度定制,究竟有多大可行性?在这篇文章中,我们
🛠 工具链
NestJS 12 发布:ESM 优先的包、Rspack 与 Vitest
这个渐进式框架迎来了多年来最大的一次发布,转为 ESM 优先(CJS 仍是可选),用 Rspack 取代 webpack,加入 Standard Schema 支持以便与 Zod、Valibot 等轻松互操作,此外还有结构化日志、一个全新的主页等等。
srvx 1.0:一套 fetch handler 通吃 Node、Deno 和 Bun
你可以导出一个接收标准 Web Request 并返回 Response 的 handler,然后原封不动地运行在 Node、Deno 或 Bun 上。它还带有支持文件监听和静态服务的 CLI,并且 srvx fetch 无需启动服务器就能调用你的 handler。
往期精选
- Web前端周刊2026W35 | Bun 1.4 发布、pnpm 12 Rust 重写、Solid 2.0 RC 冻结、Next.js 修复两 RCE
- Web前端周刊2026W34 | CSS类前缀选择器采纳、Lovable迁移TanStack Start、Fastify 6.0 Alpha
- Web前端周刊2026W33 | TanStack Form v2 Alpha、pnpm 12 Rust重写、Fastify 6.0 Alpha
- Rust周刊2026W36 | rustup 1.29.1 更名 target tuple、Wasmi 2.0 提速 2.2 倍、Box map 稳定化、aarch64 FFI 传参修复、Cargo feature 元数据
- 用 Rust 重写 Bun
- 2026年8月编程语言排行榜|MATLAB 首次跌出前20
阅读原文