# Подсказки для агента (Cursor) ## Сборка и деплой Деплой автоматический: пуш в git → автодеплой на хостинг. По запросу пользователя «собрать», «билд»: 1. При правках `src/pages/**` или `src/partials/**` — `npm run build:pages`. 2. При смене шрифтов/Plyr или `package.json` — `npm run build` (включает `vendor:copy`). 3. Для деплоя — сделать git commit + push. ## Git Репозиторий: `http://x1qnvk08zec2u5cx6yh5iexh.155.212.186.39.sslip.io/admin/site-portfolio.git` ### Влить в `master`, оставаясь на текущей ветке Запрос «влить в мастер» **не означает** `git checkout master`, если пользователь не просил переключиться. - **Fast-forward** (ветка впереди `master`): на текущей ветке — `git branch -f master HEAD` или `git push . HEAD:master`. - **Нужен merge-коммит** (`master` ушёл вперёд): `git checkout master` → `git merge <ветка>` → `git checkout -` (вернуться на прежнюю ветку). - После влития **не меняй** активную ветку в IDE без запроса; при необходимости уточни, на какой ветке продолжать работу. ## Design System Перед работой с UI **прочитай `DESIGN.md`** в корне проекта — там описаны токены, типографика, компоненты и правила их применения. Страницы-каталоги (живые примеры): - **`src/pages/cases/design-system.html`** → токены, типографика, кнопки, карточки, секции - **`src/pages/cases/template-elements-demo.html`** → элементы лонгрида: медиа, галереи, видео, callout - **`src/pages/cases/mini-projects-showcase.html`** → карточки активности (mp-card) При **глобальных** правках стилей (токены в `public/css/main.css`, компоненты главной, блоки лонгрида кейса) **обновляй соответствующий каталог**: живой пример и краткое описание в секции, при необходимости — `docs/case-page-blocks.md`. ## Контент кейса в public (по запросу) Обычный путь: `src/pages/cases/` → `npm run build:pages`. Если пользователь явно просит править **собранную** страницу под `npm run serve`, см. **`.cursor/rules/case-content-edit-in-public.mdc`**: правки в `.case-article` в `public/cases/`, синхронизация в `src` по запросу. ## Русские тексты (humanizer-ru) При генерации и правке **русскоязычного контента** для сайта (кейсы, главная, `texts/**`, callout, meta) — читать скилл **`humanizer-ru`** и вычитывать текст по нему перед отдачей пользователю. Подробности: **`.cursor/rules/humanizer-ru-text.mdc`**. ## Правки контента (content-edits, localhost) Режим на странице при `npm run serve` → очередь в **`texts/content-edits/pending.json`**. Apply по запросу **«примени правки»**: читать этот файл, править **`src/pages/`**, **humanizer-ru**, **`npm run build:pages`**; **`pending.json` не очищать** (пользователь удаляет пункты сам). Подробности: **`docs/content-edit-mode.md`**, **`.cursor/rules/content-edit-apply.mdc`**. ## PDF резюме (по запросу) По запросу «обнови PDF», «перегенерируй PDF»: 1. Убедиться, что dev-сервер запущен (`localhost:4175`). 2. Запустить `npm run generate:resume-pdf`. 3. Файл обновится в `public/assets/resume/Mamadaev_Nik__CV__Product_Designer_UX-UI.pdf`. Подробнее: **`docs/resume-pdf.md`**. Скрипт требует запущенный сервер — нельзя встроить в обычный `build`. ## Vendor (шрифты, Plyr) Локально в `public/`, без CDN. Обновление: **`docs/vendor-assets.md`**, команда `npm run vendor:copy`. ## Медиа на сайте (WebP / WebM) По запросу «добавить/обновить картинку или видео» в разметке только **WebP** (изображения, постеры) и **WebM** (видео); исходник конвертировать скриптами, не ждать отдельного уточнения. Подробности: **`.cursor/rules/media-webp-webm-only.mdc`**, `docs/image-optimization.md`, `docs/video-conversion.md`. ## Остальное Правила и таблица доков: **`.cursor/rules/read-docs-before-feature-dev.mdc`** (локально; папка `.cursor/` может быть в `.gitignore`). ### Ключевые файлы | Файл | Назначение | |---|---| | `DESIGN.md` | Описание дизайн-системы для AI-агентов | | `public/css/main.css` | Единый CSS: токены + все компоненты | | `src/pages/cases/design-system.html` | Живой каталог токенов, типографики, кнопок, карточек | | `src/pages/cases/template-elements-demo.html` | Элементы лонгрида: медиа, галереи, видео, callout | | `src/pages/cases/mini-projects-showcase.html` | Карточки активности (mp-card) | | `docs/case-page-blocks.md` | Инструкция по блокам лонгридов | | `docs/resume-pdf.md` | Генерация PDF резюме (Puppeteer) |