@band-app/server

中文文档
0.64.0发布于 2026/11/07TypeScriptES Module近 30 天下载 5699

Web服务器+Band的仪表板前端. 提供tRPC API,WebSocket层,并捆绑被Electron桌面应用程序和(可选的)独立的npm消费者所消耗的UI.

中文使用文档
文档目录5 节
  1. 运行时间:节点.js 22.5+
  2. SQL 通过 node:sqlite
  3. 安装
  4. 发展
  5. 套装布局( E) dist/ (中文(简体) )

@ band- app/ 服务器

Web服务器+Band的仪表板前端. 提供tRPC API,WebSocket层,并捆绑被Electron桌面应用程序和(可选的)独立的npm消费者所消耗的UI.

运行时间:节点.js 22.5+

此软件包运行在 节点.js v22.5 或更新. CI在节点24测试它(.nvmrc 在 repo 根上, 版本的桌面应用程序捆绑。 弹出 bin/band-server.mjs 实值 #!/usr/bin/env node。 。 。 .

iQQ 用户运行乐队 桌面应用程序 对 没有 需要自己安装节点——桌面外壳会自带捆绑的节点运行时间(通过Electron)并产入其下方的网络服务器. 22.5+节点要求仅适用于直接通过此软件包运行的人 band-server 编号 : node dist/start-server.mjs,或针对源树进行本地开发.

# Run the server (standalone consumer scenario)
band-server
# or:
node dist/start-server.mjs

SQL 通过 node:sqlite

SQLite由节点的内置提供 node:sqlite 模块 —— 捆绑中没有本地模块船。 这样就能消除 NODE_MODULE_VERSION 影响软件包的ABI 不匹配 better-sqlite3: 无论哪个节点, 用户都会运行补给 node:sqlite 直接,所以二进制总是与运行时间相匹配.

node:sqlite 处于 稳定1.2——释放候选人 在当前节点中,自22.13.0起可用未加标记。 API在整个节点22.5 → 23.x → 24.x稳定. 启动 ExperimentalWarning 能够被沉默 NODE_OPTIONS='--no-warnings=ExperimentalWarning' (测试和e2e脚本在 package.json 已经这么做了).

我们只是简短地 bun:sqlite (PR #353)来躲避同样的ABI问题,但Bun's node:http shim不会开枪的 upgrade 活动 httpServer.on("upgrade", …),打破 tRPC 订阅、终端和LSP WebSockets(烤箱-sh/bun#18945, (中文(简体) ), 5951号, (中文(简体) ), 24107号) (中文(简体) ). node:sqlite 获得同样的ABI稳定性 赢得不改变JS运行时间.

安装

独立方案(运行) band-server 在桌面应用程序之外,Node v22.5+必须打开 PATH。桌面应用程序用户可以跳过此部分 。 .

# 1. Install Node.js 22.5+ (https://nodejs.org)

# 2. Install the package
npm i -g @band-app/server       # or: pnpm add -g

# 3. Run
band-server                   # starts on PORT (default 3456)

环境:

瓦尔默认页:1
PORT3456TCP 端口绑定
HOME/.band—— 说状态目录( sqlite db, 设置, 日志)

发展

pnpm install          # at repo root
pnpm dev              # hub with Vite serving apps/web in-process (HMR, one port)
pnpm build            # UI (apps/web/dist/client), then the hub bundle (apps/hub/dist)
pnpm --filter @band-app/server test       # backend integration tests (vitest under Node)
pnpm --filter @band-app/web test:e2e   # Playwright, booting the hub bundle

维特套房 生产捆绑dist/start-server.mjs)),而Playwright e2e帮助器都在节点下运行.

套装布局( E)dist/(中文(简体) )

dist/
├── start-server.mjs           # esbuild bundle, entry point
├── client/                    # built dashboard frontend (vite)
├── server/                    # SSR server bundle
├── migrations/                # drizzle SQL migrations
├── openapi.json               # generated tRPC OpenAPI spec
└── node_modules/              # only externalized native deps + helpers
    ├── node-pty/              # native PTY (.node + spawn-helper, NAPI — ABI-stable)
    └── @openai/codex/         # Codex SDK package.json (codex CLI is system-installed)

没有SQLite本地模块船在捆绑.

版本与发布记录

@band-app/server 共发布 99 个版本,首次发布于 2026/05/05;过去 12 个月发布了 99 个版本。

版本发布日期距今
0.64.0latest2026/11/07今天
0.63.02026/11/07今天
0.62.02026/11/071 天前
0.61.02026/11/061 天前
0.60.12026/11/062 天前
0.60.02026/11/052 天前

关于 @band-app/server 的常见问题

@band-app/server 是什么?

Web服务器+Band的仪表板前端. 提供tRPC API,WebSocket层,并捆绑被Electron桌面应用程序和(可选的)独立的npm消费者所消耗的UI.

如何安装 @band-app/server?

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

@band-app/server 支持 TypeScript 吗?

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

@band-app/server 支持 ESM 还是 CommonJS?

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

@band-app/server 需要什么版本的 Node.js?

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

@band-app/server 可以商用吗?

@band-app/server 使用 未声明 许可。package.json 没有声明许可证。没有许可证的代码默认保留全部权利,商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括,不构成法律意见,请以许可原文为准。

@band-app/server 的下载量有多少?

根据 npm 官方下载统计,@band-app/server 在 2026/10/08 – 2026/11/06 这 30 天内被下载 5,699 次,日均约 190 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@band-app/server 还在维护吗?

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