# Third-party notices

Gambit Drill's original code, repertoire, and artwork are proprietary (see
`LICENSE`), except for the separately licensed material identified below.

## Stockfish 18 lite single-threaded WebAssembly

- Files: `vendor/stockfish/stockfish-18-lite-single.js` and `.wasm`.
- Licence: GNU General Public License, version 3. The full licence is in
  `vendor/stockfish/LICENSE`.
- Corresponding build source: [stockfish.js v18.0.0 release](https://github.com/nmrugg/stockfish.js/releases/tag/v18.0.0).
- Upstream engine: [official Stockfish source](https://github.com/official-stockfish/Stockfish).
- The engine files are unmodified. Gambit Drill starts them as a separate
  Web Worker and sends UCI text commands. This describes the implementation;
  it is not a legal determination about how GPL obligations apply to a
  combined distribution. Stockfish remains available under GPL-3.0; see the
  linked source and included licence for its terms.

## chess.js 1.0.0

- File: `vendor/chess.js`.
- Licence: BSD 2-Clause. Copyright and complete licence text are in
  `vendor/chess.js.LICENSE`.

## Wikibooks-derived coach notes

The coach explanations identified with the `wikibooks` source key in
`library/ideas.mjs` are paraphrased/adapted from Wikibooks contributors,
[*Chess Opening Theory*, Two Knights 5.e5](https://en.wikibooks.org/wiki/Chess_Opening_Theory/1._e4/1...e5/2._Nf3/2...Nc6/3._d4/3...exd4/4._Bc4/4...Nf6/5._e5).
Those identified notes are made available under [Creative Commons
Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)](https://creativecommons.org/licenses/by-sa/4.0/).
They have been paraphrased and adapted. This licence applies to those notes,
not to the rest of Gambit Drill. Other coach notes retain their own source
and copyright status as stated in the app.

## Classic board pieces

The app's active Classic board pieces are raster variants extracted from the
project's concept-board image. The owner confirms they made or generated that
image for this project. No separate third-party image licence is identified.
If an external image-generation service was used, its output terms apply to
that source image. The PNG variants are generated locally by
`tools/extract-concept-pieces.mjs`.

## APIs and data

Lichess Opening Explorer and Chess.com Published Data API are contacted only
when a user invokes the corresponding feature. Their data and services remain
subject to their providers' current terms. API use is not a third-party code
licence or an endorsement by either provider. See the Privacy section of the
README for what is sent and when.

- The app sends Lichess requests one at a time and waits 60 seconds after a
  `429` response, following [Lichess API tips](https://lichess.org/page/api-tips).
- Chess.com describes its Published Data API as public and read-only. The app
  fetches archive URLs serially after the user starts a scan. Chess.com asks
  API users to respect its product identity and notes that a recognizable
  user-agent with developer contact details helps it reach an application if
  blocked. This browser app cannot set a custom `User-Agent` header; requests
  carry the browser's own user-agent. See the [current API documentation](https://www.chess.com/news/view/published-data-api).
