Files
site-portfolio/docs/vendor-assets.md
T

52 lines
1.9 KiB
Markdown

# Локальные vendor-ассеты (шрифты и Plyr)
Сайт не использует Google Fonts и jsDelivr в рантайме. Файлы лежат в `public/` и попадают на хостинг через git push.
## Что где
| Путь | Содержимое |
|------|------------|
| `public/assets/fonts/*.css` | Три пресета темы: `merriweather`, `geologica`, `mono` |
| `public/assets/fonts/files/*.woff2` | Файлы шрифтов (из `@fontsource/*`) |
| `public/vendor/plyr/` | `plyr.css`, `plyr.min.mjs` (из `plyr@3.8.4`) |
Подключение:
- Шрифты — inline `theme-init-script` и [`theme-fonts.js`](../public/js/modules/theme/theme-fonts.js).
- CSS Plyr — partial [`src/partials/head-plyr.html`](../src/partials/head-plyr.html) только на страницах с `video[data-case-video-player]`.
- JS Plyr — [`video-player.js`](../public/js/modules/cases/video-player.js).
## Обновление
```bash
npm install
npm run vendor:copy
```
Скрипт: [`scripts/copy-vendor.mjs`](../scripts/copy-vendor.mjs). Пересобирает `public/assets/fonts/` и `public/vendor/plyr/` из `node_modules`.
Полная сборка (vendor + HTML):
```bash
npm run build
```
Только HTML из `src/`:
```bash
npm run build:pages
```
## Добавить или изменить шрифт
1. Установить пакет `@fontsource/...` или `@fontsource-variable/...`.
2. Добавить источник в `FONT_BUNDLES` в `copy-vendor.mjs`.
3. `npm run vendor:copy`.
4. Проверить имена `font-family` в [`public/css/main.css`](../public/css/main.css) (`html[data-font=...]`).
## Обновить Plyr
1. Обновить версию в `package.json` (`dependencies.plyr`).
2. `npm install` → `npm run vendor:copy`.
3. При смене API — правки в `video-player.js`.