Процессы
Frontend Development
Workflow разработки фронтенд-функционала.
Типы задач
Ручные (от бизнеса/команды)
| Тип | Описание | Источник | Входные данные |
|---|---|---|---|
feature | Новый функционал | Business → Design → Backend → Frontend | Макеты, API docs |
change | Изменение существующего функционала | Business → Анализ влияния → Design/Backend → Frontend | Новые требования, макеты (если UI), API docs (если API) |
bug | Ошибка в текущей реализации | QA/Users → Frontend напрямую | Инструкция воспроизведения |
improvement | Глобальные улучшения без новых фич | Tech Lead / Business | Спецификация, scope |
Автоматические
| Тип | Описание | Триггер |
|---|---|---|
deps | Управление зависимостями | Renovate / Dependabot / Manual |
security | Аудит уязвимостей | npm audit / Snyk / Manual |
Workflow по типу задачи
feature — Новый функционал
Входные данные:
- API готов и задокументирован
- Макеты в Figma
Git commit: feat(module): description
change — Изменение существующего функционала
Входные данные:
- Описание новых бизнес-требований
- Макеты (если UI меняется)
- API документация (если API меняется)
Примеры:
- Изменение логики расчёта скидок
- Добавление поля в существующую форму
- Изменение flow оформления
Git commit: change(module): description
bug — Исправление ошибки
Входные данные:
- Шаги воспроизведения
- Ожидаемое поведение
- Фактическое поведение
- Скриншоты/видео (если есть)
Git commit: fix(module): description
improvement — Глобальное улучшение
Примеры:
- Внедрение аналитики
- Портирование на натив
- Портирование в mini-app
- Рефакторинг архитектуры
Git commit: refactor(scope): description или chore(scope): description
deps — Обновление зависимостей
Процесс:
- Проверить changelog на breaking changes
- Обновить в dev-ветке
- Протестировать критичный функционал
- Merge
Git commit: chore(deps): update package-name to version
security — Аудит безопасности
Процесс:
npm audit/ Snyk report- Оценить severity
- Обновить уязвимые пакеты
- Если нет фикса — задокументировать и отслеживать
Git commit: fix(security): patch vulnerability in package-name
Этапы разработки (общие)
1. Анализ задачи
Входные данные
- Описание задачи с типом (
feature,bug,improvement,deps,security) - Макеты (Figma) — для
feature - Инструкция воспроизведения — для
bug - API документация
Действия
- Прочитать описание задачи
- Определить тип задачи
- Изучить макеты (если feature)
- Определить затрагиваемые компоненты
- Уточнить edge cases
2. Поиск готового решения
Перед написанием кода проверь:
Приоритет решений
| Приоритет | Источник |
|---|---|
| 1 | Shared-модули (вдруг уже решали) |
| 2 | Nuxt UI компоненты |
| 3 | Nuxt Charts |
| 4 | Nuxt Modules |
| 5 | npm пакеты |
| 6 | Кастомный код |
Чек-лист
- Есть ли в shared-модулях?
- Есть ли в Nuxt UI?
- Есть ли в Nuxt Charts?
- Есть ли Nuxt Module?
3. Реализация
Структура работы
- Создать/обновить типы (
types/) - Создать/обновить composable (
composables/) - Создать/обновить компоненты (
components/) - Создать/обновить страницу (
pages/)
Правила кода
- standard-auto-imports — удалять лишние импорты
- standard-component-naming — именование компонентов
- standard-composables — бизнес-логика в composables
- Использовать Nuxt UI компоненты
- Использовать TypeScript
Git commits (по типу задачи)
# feature
feat(orders): add order filters component
# change
change(orders): update discount calculation logic
# bug
fix(auth): handle token refresh error
# improvement
refactor(users): extract validation to composable
chore(analytics): integrate posthog
# deps
chore(deps): update nuxt to 4.1.0
# security
fix(security): patch lodash vulnerability
4. Тестирование
Manual testing
- Функционал работает по макету
- Responsive (mobile/tablet/desktop)
- Edge cases обработаны
- Нет консольных ошибок
- Loading states
- Error states
5. Code Review
Перед MR
- Нет лишних импортов (auto-imports)
- Бизнес-логика в composables
- Используется Nuxt UI
- Types актуальны
- Нет console.log
MR Description
## Тип задачи
<!-- feature | change | bug | improvement | deps | security -->
## Что сделано
- Добавлен компонент фильтров
- Обновлена страница списка
## Скриншоты
[скриншоты UI]
## Тестирование
- [ ] Desktop
- [ ] Mobile
6. Merge
Критерии
- Code review пройден
- CI/CD прошёл
- Нет конфликтов