30 lines
2.2 KiB
Markdown
30 lines
2.2 KiB
Markdown
# Frontend
|
||
|
||
React/Vite-клиент; общие правила работы — в root `AGENTS.md`.
|
||
До frontend-решения прочитай [router](.ai/CONVENTIONS.md) и
|
||
[sources](.ai/SOURCES.md), затем только применимые документы/разделы.
|
||
|
||
## Проверка
|
||
|
||
Перед Node-командами: `nvm use --silent` по `.nvmrc`.
|
||
После lockfile install `npm ci` полный gate — `npm run verify`.
|
||
Он проверяет OpenAPI drift, TypeScript, Biome, Vitest/coverage, Knip,
|
||
dependency boundaries и сборки приложения/Storybook без backend.
|
||
Точные scripts принадлежат `package.json`; targeted checks — у выбранного convention.
|
||
|
||
HTTP contract changes используют предоставленный OpenAPI snapshot; frontend
|
||
локально проверяет только соответствие generated types этому snapshot:
|
||
[Источник HTTP-контракта](../docs/architecture/http-api.md#источник-контракта).
|
||
Generated types редактируются через их source; T-Bank доступен только через backend.
|
||
Frontend dependencies используют exact versions. Pre-commit запускает staged
|
||
formatting и FSD checks; сообщения commits — Conventional Commits.
|
||
Если у задачи есть связанная issue этого репозитория, добавляй её номер
|
||
в конец заголовка: `ci: run full frontend verification #1`.
|
||
Без связанной issue номер необязателен: `chore(deps): update non-major dependencies`.
|
||
Формат Conventional Commits проверяет `commitlint.config.cjs`.
|
||
|
||
Code/style checks автоматические только в scope конфигурации. i18n, props,
|
||
semantic placement и выбор полезных тестов обязательны при review.
|
||
Storybook уже доступен как reference; ожидаемый UI и его состояния определяет
|
||
задача, а визуальное соответствие проверяется отдельно от сборки.
|