# 第三方组件与素材

本项目没有自研棋力引擎，也没有使用 Lichess 的标志、商标或在线对弈服务。运行依赖的准确版本及传递依赖由 `package-lock.json` 锁定。

## Stockfish.js 19.0.0

- 用途：离线桌面版由 Electron utilityProcess 运行；本地浏览器版由服务器子进程运行；Sites 云端版由浏览器 Web Worker 运行同一个 Lite Single WebAssembly 引擎，通过 UCI 分析和选择走法。
- 作者与来源：Stockfish contributors；JavaScript/WebAssembly 移植由 Nathan Rugg、Chess.com 等贡献者维护。
- 项目与对应版本源代码：[nmrugg/stockfish.js](https://github.com/nmrugg/stockfish.js)、[19.0.0 源码标签](https://github.com/nmrugg/stockfish.js/tree/v19.0.0)、[npm 包](https://www.npmjs.com/package/stockfish/v/19.0.0)。npm 发布元数据记录的源码提交为 [`54fde71d90c7c403964f6cacef48f7bbec495df1`](https://github.com/nmrugg/stockfish.js/tree/54fde71d90c7c403964f6cacef48f7bbec495df1)。
- 许可证：GNU GPL v3；全文随附于 [licenses/GPL-3.0.txt](licenses/GPL-3.0.txt)。本项目不修改其二进制或源码。
- 云端版提供未经修改的 Stockfish.js 和 WebAssembly 文件；对应的完整上游源码及构建资料可从 [源码归档](https://github.com/nmrugg/stockfish.js/archive/54fde71d90c7c403964f6cacef48f7bbec495df1.tar.gz) 下载，所用构建变体为 Lite Single。复制/发布包含引擎二进制的安装包时，应同时提供准确对应的完整源码及构建资料，履行 GPL 分发要求；仅附许可证或仓库首页链接不能替代应履行的源码提供义务。
- 桌面交付额外附带 `Stockfish-19.0.0-corresponding-source.tar.gz`，内含上述提交的源码/构建脚本和 `nn-61e7af4bb97d.nnue` Lite 网络文件。JS/WASM 未修改，桥接程序属于本项目，独立于引擎资源。

## Cburnett 棋子图案

- 文件：`public/pieces/` 下 12 个 SVG（白/黑兵、马、象、车、后、王）。
- 作者：Colin M. L. Burnett（Cburnett）。
- 来源：[Lichess lila / public/piece/cburnett](https://github.com/lichess-org/lila/tree/b55d478390fe99a328e51417ea65700ec6d1531c/public/piece/cburnett)。保留下载时的 SVG 原文件，未作图形修改；SVG 本身是可编辑源文件。
- 上游明确列为 GPL v2 或更高版本，见其 [COPYING.md](https://github.com/lichess-org/lila/blob/b55d478390fe99a328e51417ea65700ec6d1531c/COPYING.md)。副本保存在 [licenses/Lichess-COPYING.md](licenses/Lichess-COPYING.md)，许可证全文在 [licenses/GPL-2.0.txt](licenses/GPL-2.0.txt)。
- 桌面图标由相同白马 SVG 加上本项目蓝色背景生成，保留相同组件许可；原始 SVG 和生成脚本一并随项目保留。

## Electron 44.4.3

- 用途：离线应用窗口、隔离的渲染进程与棋手进程，内含 Chromium 与 Node.js，运行时不需要另外安装浏览器或 Node。
- 来源：[Electron](https://github.com/electron/electron/tree/v44.4.3)。Electron 使用 MIT 许可证，桌面包的 `licenses/Electron-MIT.txt` 保留完整文本；Chromium 及其第三方组件声明由对应 Electron 发布包中的 `LICENSES.chromium.html` 提供。
- npm 运行依赖的各自 LICENSE/NOTICE 文件保留在应用包的 `node_modules` 中。桌面包不包含 Playwright、构建工具、Cloudflare、Drizzle 或其他开发依赖。

## chess.js 1.4.0

- 用途：服务器国际象棋规则、合法走法、局面重建和 PGN。
- 来源：[jhlywa/chess.js](https://github.com/jhlywa/chess.js/tree/v1.4.0)。
- 许可证：BSD 2-Clause；完整版权和许可文本见 [licenses/chess.js-BSD-2-Clause.txt](licenses/chess.js-BSD-2-Clause.txt)。

## Express 5.2.1

- 用途：本机 HTTP 服务。
- 来源：[expressjs/express](https://github.com/expressjs/express)。
- 许可证：MIT，全文见 [licenses/express-MIT.txt](licenses/express-MIT.txt)。

## 开发测试

使用 Microsoft Playwright（`@playwright/test`，Apache-2.0）进行浏览器验收。它不属于 Windows 一键启动安装的运行依赖。各包及传递依赖中的原始 LICENSE/NOTICE 文件随 npm 安装保留。对外分发之前应连同所分发的依赖一并核对、提供这些声明。
