brumate

中文文档
0.5.0发布于 2026/11/03MITTypeScriptES Module构建来源已验证

用于可恢复web应用程序的组件语言和编译器

中文使用文档
文档目录5 节
  1. 安装
  2. 一个组件
  3. 它包括什么
  4. 文档
  5. 许可证

brumate

用于可恢复web应用程序的组件语言和编译器。

brumate 编译排成一列纵队 .brm 组件分为服务器端呈现的HTML和小型客户端模块。浏览器不补水。它读取服务器写入页面的状态,并在启动时加载页面上组件的代码。

安装

pnpm add brumate
pnpm add -D vite @brumate/tsc typescript

brumate需要Node 22.18或更新版本,以及Vite。

// vite.config.ts
import brumate from 'brumate/vite';
import { defineConfig } from 'vite';

export default defineConfig({
  plugins: [brumate()],
  build: {
    manifest: true,
    rolldownOptions: { input: 'src/client.ts' },
  },
});
// src/client.ts
import 'virtual:brumate/start';

一个组件

<script>
  import { $memo, $signal } from 'brumate/signals';

  let count = $signal(0);
  const double = $memo(count * 2);
</script>

<button onClick=(() => count++)>Clicked {count} times</button>
<p>Double: {double}</p>

服务器呈现按钮和文本。当页面启动时,浏览器加载单击处理程序的代码,以及它引起的更新的代码。它不会再次呈现该页。

它包括什么

  • brumate/signals:编译时函数,如 $signal, $memo, $effect, $props, $action 和 $optimistic.
  • brumate/vite: Vite插件。它编译 .brm 文件,每个处理程序拆分客户端代码,在开发中提供服务器函数调用,并且可以预呈现页面。
  • brumate/server:渲染、流、路由、服务器功能、会话、cookie和标准模式验证。
  • brumate/loader 和 brumate/client:在浏览器中运行的加载器和内核。
  • brumate/testing:在DOM中挂载组件进行测试,具有真实服务器的功能。

文档

Brumate是0。页面格式可以在不同版本之间改变,因此服务器和客户端必须来自相同的版本。

许可证

麻省理工学院© lxsmnsyc

版本与发布记录

brumate 共发布 12 个版本,首次发布于 2026/10/21;过去 12 个月发布了 12 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.5.0latest2026/11/03今天
0.4.42026/11/03今天
0.4.32026/11/02今天
0.4.22026/11/021 天前
0.4.12026/11/011 天前
0.4.02026/10/313 天前

关于 brumate 的常见问题

brumate 是什么?

用于可恢复web应用程序的组件语言和编译器

如何安装 brumate?

在项目目录运行 npm install brumate,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 brumate,可以用 npx brumate 直接运行。

brumate 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

brumate 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

brumate 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

brumate 可以商用吗?

brumate 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

brumate 还在维护吗?

最新版本 0.5.0 发布于 2026/11/03(今天);至今共发布 12 个版本,其中过去 12 个月发布了 12 个;首次发布于 2026/10/21。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。