# Исходники движка шрифтов travinov.com

Собранный файл: /js/font-engine.js

## Лицензии

* `vendor/*` — код проекта draw-your-font, MIT, (c) 2026 Danilo Znamerovszkij,
  https://github.com/danilo-znamerovszkij/draw-your-font (полный текст —
  vendor-draw-your-font-LICENSE.txt). Наши правки к нему перечислены в
  vendor-draw-your-font-VENDOR.md.
* `travinov/*` — наш слой: русский алфавит, вертикальные полосы глифов, склейка штрихов.
* Трассировщик `esm-potrace-wasm` 0.5.0 (обёртка над potrace Питера Селинджера) —
  **GPL-2.0**. Он вкомпилирован в собранный файл, поэтому собранный файл распространяется на
  условиях GPL-2.0, и эта папка существует, чтобы выполнить требование лицензии об исходниках.
  Полный текст лицензии — `GPL-2.0.txt`. Исходник самого компонента — `gpl/esm-potrace-wasm.index.js`
  и `gpl/esm-potrace-wasm.package.json`; апстрим: https://github.com/tomayac/esm-potrace-wasm
  (и https://potrace.sourceforge.net для оригинального potrace).
* Прочее в бандле: svg2ttf (MIT), svgpath (MIT), pako (MIT AND Zlib).

## Как собрать самому

```
npm i esbuild esm-potrace-wasm svgpath svg2ttf
npx esbuild travinov/engine.browser.js --bundle --minify --format=iife \
  --target=es2019 --external:node:fs --external:fs --external:wawoff2 \
  --outfile=font-engine.js
```

Пути в `travinov/engine.browser.js` рассчитаны на раскладку исходного репозитория
(`travinov/src/font/*` и `travinov/vendor/draw-your-font/src/*`); в этой папке они уложены
плоско, поэтому при самостоятельной сборке импорты нужно поправить на `../vendor/`.
