Когда дедлайн горит, а фронтендера нет
Ситуация знакомая каждому тимлиду: клиент ждет MVP через неделю, фронтендер в отпуске, а бэкенд готов. Обычно в этот момент начинается паника, поиски фрилансера и переговоры о сдвиге сроков. Я пошел другим путем - собрал фронтенд сам, используя AI-ассистента как полноценного напарника.
Не просто "напиши мне компонент", а системный подход: от дизайн-системы до ревью кода. Вот как это работает на практике.
Важно: этот подход не заменяет фронтенд-разработчика для сложных проектов. Но для MVP или внутренних инструментов - работает идеально.
Почему стандартные AI-ассистенты проваливаются на фронтенде
Проблема большинства AI-инструментов в 2026 году - они генерируют код, а не архитектуру. Получается каша из компонентов без единого стиля, с разными подходами к TypeScript и хаотичной структурой.
Типичный сценарий:
- Попросил кнопку - получил компонент с inline-стилями
- Попросил таблицу - получил другой подход к TypeScript
- Попросил форму - получил третью библиотеку валидации
Через три часа у тебя Frankenstein-проект, который невозможно поддерживать. Решение - правила игры, которые ты задаешь AI с самого начала.
1 Выбираем правильный AI-инструмент
На 2026 год у нас есть несколько вариантов. Я тестировал три подхода:
| Инструмент | Плюсы | Минусы | Для чего подходит |
|---|---|---|---|
| GitHub Copilot Custom Agents | Интеграция в IDE, понимание контекста проекта | Требует настройки агентов под конкретные задачи | Повседневная разработка, рефакторинг |
| Claude 3.7 Sonnet (локально через Cogitator) | Полный контроль, работа без интернета | Требует мощного железа для локального запуска | Генерация больших блоков кода, архитектурные решения |
| Cursor с агентами | Специализирован под код, отличное понимание Vue 3.5 | Проприетарный, требует подписки | Быстрое прототипирование, обучение новым технологиям |
Я выбрал комбинацию: GitHub Copilot для повседневного кодинга + Claude 3.7 через Cogitator для архитектурных решений. Почему? Copilot уже знает мой проект, а Claude отлично справляется с генерацией целых компонентов по спецификации.
2 Создаем дизайн-систему за 30 минут
Самая важная часть - установить правила до первой строчки кода. Без этого AI будет генерировать хаос.
Я создал файл design-system.md в корне проекта:
# Дизайн-система проекта
## Технологии
- Vue 3.5 с Composition API
- TypeScript 5.5 со strict mode
- Tailwind CSS 4.0
- Pinia для состояния
- Vue Router 4.3
## Правила компонентов
1. Все компоненты в папке /src/components
2. Имена файлов: PascalCase (Button.vue, UserTable.vue)
3. Каждый компонент - отдельный файл .vue
4. Composition API только, Options API запрещен
5. TypeScript интерфейсы для всех props
## Стилизация
1. Используем только Tailwind CSS классы
2. Кастомные цвета через theme в tailwind.config.js
3. Адаптивность: mobile-first подход
4. Иконки: только из Heroicons v2
## Состояние
1. Глобальное состояние только через Pinia stores
2. Stores в /src/stores
3. Каждый store - отдельный файл с TypeScript типизацией
## API взаимодействие
1. Используем axios с интерцепторами
2. Все запросы через /src/services
3. TypeScript интерфейсы для всех ответов API
Этот файл - твой главный инструмент управления AI. Каждый раз, когда просишь сгенерировать код, добавляй ссылку на него:
Сгенерируй компонент таблицы пользователей согласно design-system.md
AI читает правила и генерирует код, который им соответствует. Без этого - получаешь случайный результат.
3 Настраиваем проект: скелет за 15 минут
Не используй create-vue или другие шаблоны. Они добавляют лишнее. Создай минимальную структуру:
mkdir my-project
cd my-project
npm init -y
npm install vue@3.5 typescript@5.5 tailwindcss@4.0
npm install -D @vitejs/plugin-vue vite
Создай базовые конфигурационные файлы с помощью AI. Вот промпт для Vite конфига:
Создай vite.config.ts для Vue 3.5 + TypeScript проекта.
Требования:
- Поддержка TypeScript с strict mode
- Алиас @ для src/
- Поддержка Vue SFC
- Dev сервер на порту 3000
AI сгенерирует правильный конфиг. То же самое для tailwind.config.js, tsconfig.json, и основных директорий.
Ошибка новичков: пытаться настроить все вручную. Дай AI задачу "создай структуру проекта для Vue 3.5 с TypeScript и Tailwind", и получи готовый скелет.
4 Генерация компонентов: от простого к сложному
Начни с базовых компонентов. Не проси "сделай весь дашборд". Разбей на части:
- Создай компонент Button согласно design-system.md
- Создай компонент Input с валидацией
- Создай компонент Modal
- Создай таблицу с пагинацией
Вот пример промпта для кнопки:
Создай компонент Button.vue согласно design-system.md.
Требования:
- Поддержка вариантов: primary, secondary, danger
- Размеры: sm, md, lg
- Состояния: loading, disabled
- TypeScript интерфейс для props
- Используй Tailwind CSS классы
- Emit событие click
- Slot для иконки слева
AI сгенерирует что-то вроде:
Заметь: код следует всем правилам из design-system.md. Composition API, TypeScript интерфейсы, Tailwind классы.
5 Собираем страницы: композиция компонентов
Когда есть базовые компоненты, собирай страницы. Опять же - дай AI контекст:
Создай страницу Dashboard.vue для админ-панели.
Используй уже созданные компоненты:
- Button (primary variant)
- UserTable (из предыдущей генерации)
- Modal (для добавления пользователя)
Страница должна содержать:
1. Заголовок "Панель управления"
2. Кнопку "Добавить пользователя"
3. Таблицу пользователей с данными из API
4. Модальное окно для добавления (по умолчанию скрыто)
Данные получай из UserStore (Pinia).
Добавь загрузку данных при mounted.
Обработай ошибки загрузки.
AI сгенерирует страницу, которая использует твои компоненты и следует установленной архитектуре.
6 AI-ревью кода: находим проблемы до продакшена
Самая недооцененная часть работы с AI. Ты можешь попросить его проверить твой код на:
- Соответствие design-system.md
- TypeScript ошибки (даже если tsc не ругается)
- Проблемы производительности (v-for без key, ненужные re-renders)
- Доступность (a11y) issues
- Стилистические ошибки
Промпт для ревью:
Проверь этот Vue компонент на проблемы:
1. Соответствие design-system.md
2. TypeScript типизация
3. Производительность
4. Доступность
5. Стилизация Tailwind
Предложи конкретные исправления с кодом.
AI найдет вещи, которые ты пропустил. Например:
Найдены проблемы:
1. В v-for нет key - добавить :key="user.id"
2. Цвет кнопки хардкоден - использовать классы из design-system
3. Нет обработки ошибок в try/catch
4. Компонент не reactive к изменениям props
Исправления:
- Добавить :key в v-for
- Заменить inline стили на Tailwind классы
- Обернуть API вызов в try/catch
- Использовать watch для реактивности
Это как иметь senior фронтендера для code review, только бесплатно и доступно 24/7.
Типичные ошибки и как их избежать
За неделю я набил все возможные шишки. Вот что не надо делать:
| Ошибка | Последствия | Решение |
|---|---|---|
| Просить "сделай весь проект" | AI генерирует непонятную структуру, пропускает важные части | Разбивать на мелкие задачи с четкими требованиями |
| Не проверять сгенерированный код | В код попадают устаревшие методы или security issues | Всегда делать AI-ревью и запускать TypeScript компилятор |
| Игнорировать design-system | Каждый компонент выглядит по-разному, нет консистентности | Ссылаться на design-system в каждом промпте |
| Не тестировать на реальных данных | Компоненты ломаются при реальном использовании | Создавать тестовые данные и проверять edge cases |
Что получилось в итоге
За 5 рабочих дней я собрал:
- 15 переиспользуемых компонентов (кнопки, формы, таблицы, модалки)
- 8 страниц админ-панели
- Полную TypeScript типизацию
- Адаптивный дизайн на Tailwind
- Интеграцию с бэкенд API
- Систему аутентификации
Клиент получил работающий MVP в срок. Код был достаточно чистым, чтобы потом передать его фронтендеру для доработки.
Важный момент: я не стал экспертом по Vue за неделю. Но я стал экспертом по управлению AI для генерации Vue кода. Это разные навыки.
Когда этот подход НЕ работает
Не обманывай себя. Есть ситуации, где без фронтендера не обойтись:
- Сложные анимации и интерактивность (drag-and-drop, real-time графики)
- Высокие требования к производительности (тысячи элементов в реальном времени)
- Специфичные требования к доступности (a11y для госпроектов)
- Интеграция со сложными сторонними библиотеками (D3.js, Three.js)
Но для 80% бизнес-приложений (CRUD, дашборды, админки) - подход работает отлично.
Что дальше? AI-агенты для полного цикла
Следующий шаг - автоматизация всего процесса. Вместо того чтобы писать промпты вручную, можно использовать AI-агентов, которые генерируют интерфейсы по спецификации.
Или пойти еще дальше - настроить полный full-stack цикл, где AI пишет и фронтенд, и бэкенд одновременно.
Но начинать нужно с малого. Создай design-system, начни с простых компонентов, научись давать четкие инструкции. Остальное приложится.
Попробуй на следующем внутреннем проекте. Создай design-system.md, выбери AI-инструмент, и начни с одного компонента. Первые результаты увидишь через час.
А когда освоишься - посмотри на кастомизацию AI-агентов под свои нужды. Это следующий уровень.
Удачи. И помни: AI не заменит разработчика. Но разработчик с AI заменит разработчика без AI.