# @band-app/server 中文文档

规范地址：https://npmcn.com/package/%40band-app/server/

版本：0\.64\.0
npm 元数据更新时间：2026-11-07T09:39:35.697Z
中文译文更新时间：2026-11-07T16:16:28.548Z
软件包许可：未声明

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40band-app/server
原文对照：https://npmcn.com/package/%40band-app/server/?lang=original

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：32 MB，613 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=22\.5\.0
- 运行依赖：7 个
- 首次发布：2026-05-05T09:38:12.485Z
- 最新版本发布：2026-11-07T09:39:35.512Z
- 近 30 天下载量：5699（2026-10-08 至 2026-11-06，npm 官方下载统计）
- 已发布版本数：99（近 12 个月 99 个）

## 中文简介

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

## 安装

```sh
npm install @band-app/server
```

也可以使用：`pnpm add @band-app/server`、`yarn add @band-app/server`、`bun add @band-app/server`

## README

# @ band- app/ 服务器

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

## 运行时间:节点.js 22.5+

此软件包运行在 [节点.js](https://nodejs.org/) 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`,或针对源树进行本地开发.

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

## SQL 通过 `node:sqlite`

SQLite由节点的内置提供 [`node:sqlite`](https://nodejs.org/api/sqlite.html) 模块 —— 捆绑中没有本地模块船。 这样就能消除 `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](https://github.com/oven-sh/bun/issues/18945), (中文(简体) ), [5951号](https://github.com/oven-sh/bun/issues/5951), (中文(简体) ), [24107号](https://github.com/oven-sh/bun/issues/24107)) (中文(简体) ). `node:sqlite` 获得同样的ABI稳定性 赢得不改变JS运行时间.

## 安装

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

```bash
# 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 |
| --- | --- | --- |
| `PORT` | `3456` | TCP 端口绑定 |
| `HOME/.band` | —— 说 | 状态目录( sqlite db, 设置, 日志) |

## 发展

```bash
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 是什么？

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 和提交记录判断。

