导读:ArrowJS,一个体积仅约 5KB 的新库,用于在原生 JavaScript 中构建响应式界面。
由FormKit和AutoAnimate 的开发者贾斯汀·施罗德(Justin Schroeder)创建的轻量级响应式 UI 库 ArrowJS正式发布了 1.0 版本,并将特性定为首个面向智能体的 UI 框架。
ArrowJS的官方网站为:https://arrow-js.com
ArrowJS经过大约3年的公开实验性开发,今天以稳定的 1.0 版本发布并且开源,当前代码库已迁移至GitHub 上的 standardagents 组织,最新版本于 2026 年 4 月发布,版本号为 v1.0.6。
该框架完全基于开发者和大型语言模型都已理解的平台原语构建,即 JavaScript 模块、带标签的模板字面量和 DOM。
它不需要 JSX、编译器或任何构建步骤,核心运行时文件大小不足 5KB,其团队声称其性能与 Vue 3 相当。
整个框架仅基于响应式、HTML 和组件这三个函数,维护者指出,所有文档仅占 20 万个 token 上下文窗口的不到 5%,这正是其对代理友好性的核心所在。
1.0 版本的主要新增功能是可选的 WASM 沙箱。其@arrow-js/sandbox软件包在 QuickJS WebAssembly 领域内运行组件逻辑,同时仍能渲染真实的内联 DOM,从而允许应用程序执行不受信任的、由代理生成的代码,而无需使用 iframe 或 eval。
还有作者将其描述为解决了之前无法安全运行不受信任的 AI 生成界面的问题。
除了核心功能外,该版本还通过 `@arrow-js/ssr和水合的分层软件包@arrow-js/hydrate。
在Hacker News上,一位开发者认为 ArrowJS 本质上是在提倡只使用原生 JavaScript,它通过伪装成框架来达到此目的;而其他人则质疑它与 RxJS 究竟有何区别。
一位名为r/webdev用户称赞了 Arrow 的极简主义,指出它仅包含三个辅助函数,却能用它们构建完整的 Web 应用。而一些资深用户则更坦诚地指出了 Arrow 的一些不足之处。
在GitHub 上的讨论中,一位开发者报告了一个完整应用的 bug:在监听器内部修改状态时会出现 bug;除非每个项目都带有唯一键,否则映射数据均会导致重新渲染而出现故障,包括嵌套在其他响应式对象中的响应式对象存在问题。该开发者同时请求添加生命周期钩子、事件修饰符和 DOM 引用。
有一位名为Schroeder 的开发者非常认同 DOM 引用和基本的 mounted 钩子值得添加。
与 React 和 Vue 相比,ArrowJS 沉重的组件生态系统和惯用约定,换取了原始的简洁性和与平台的紧密关联。
该团队还提供了一个代理技能(随附安装npx @arrow-js/skill),用于指导编码代理将 Arrow 添加到现有项目中。完整的文档和API 参考涵盖了迁移细节与完整的 API。
结语
ArrowJS 是一个轻量级的、无依赖的响应式 UI 库,由 FormKit 和 AutoAnimate 的开发者 Justin Schroeder 创建。
它完全基于 Web 平台的基本元素构建,比如 JavaScript 模块、带标签的模板字面量和 DOM,体积不到 5kb,无需 JSX、编译器或任何构建步骤,并且仅提供响应式、HTML 和组件这三个最基本的功能。
随着 1.0 版本的发布,它被用户定位为一个面向智能体时代的框架。目前,它在 GitHub 上拥有 3500 多个 star。
GitHub:https://github.com/standardagents/arrow-js
作者:场长
本篇文章为 @ 场长 创作并授权 21CTO 发布,未经许可,请勿转载。
内容授权事宜请您联系 webmaster@21cto.com或关注 21CTO 微信公众号。
该文观点仅代表作者本人,21CTO 平台仅提供信息存储空间服务。
请扫描二维码,使用微信支付哦。