Vue 3v3
Я работаю в Vue 3, когда команда или кодовая база уже на нём, — и продуктивен в нём на полную. Я пришёл на фронтенд Vue в ChatFood с нулевым опытом Vue и за недели уже отгружал каталог заказа, корзину и оформление через Apple Pay.
Как я пришёл к Vue 3
React и Next.js — мой основной фронтенд-стек по умолчанию. Vue я беру, когда команда или кодовая база уже на нём, — и тогда работаю в нём на полной скорости.
Эта уверенность — не теория. На ChatFood — региональной платформе order-and-pay, которую позже купил Deliverect, — меня наняли как backend-разработчика. По ходу проекта команде понадобились руки на фронтенде Vue 3, и я перешёл туда с нулевым опытом Vue. Первый смерженный pull request — в течение недели. К концу первого месяца я был одним из сильнейших на фронтенде и осваивал полный набор концепций Vue 3 прямо по ходу отгрузки реальных фич.
Поэтому, когда продукт клиента построен на Vue, переписывать его на React — почти всегда не лучшее решение. Я берусь за существующую кодовую базу и продолжаю отгружать.
В чём Vue 3 силён
Vue 3 — прагматичный фронтенд-фреймворк. Он даёт модель реактивности и систему компонентов, которые быстро читаются и в которых быстро становишься продуктивным, — именно поэтому я смог дойти от нуля до отгрузки за неделю.
Composition API и реактивность
Composition API позволяет группировать логику по смыслу, а не по хукам жизненного цикла. Реактивное состояние, производные значения и побочные эффекты одной фичи живут вместе, поэтому сложный экран остаётся читаемым по мере роста. Реактивность Vue сама отслеживает зависимости — это убирает целый класс ручной обвязки и особенно полезно на stateful-интерфейсах вроде потоков заказа, где корзина, суммы и доступность меняются вместе.
Single-file components
Single-file component во Vue держит шаблон, логику и scoped-стили в одном файле. Для быстро двигающейся продуктовой команды это реальное преимущество: разметка, поведение и CSS одного куска интерфейса лежат в одном месте — изменения локальны, а ревью проще.
Плавный вход, который выдерживает нагрузку
Vue доступен, но не поверхностен. Ментальная модель достаточно мала, чтобы ввести backend-разработчика за дни, и достаточно полна, чтобы построить на ней боевой поток заказа. Я прожил оба конца: быстрый онбординг, а затем вклад в общую дизайн-систему, на которой строилась остальная команда.

Vue против React — моя честная позиция
Я не буду продавать Vue как основной стек, потому что это не так. React и Next.js — там, где я делаю большую часть фронтенд-работы, и для проекта с нуля я обычно рекомендую именно это: экосистема, рынок найма и моя собственная глубина указывают туда.
Когда я действительно выберу Vue?
- Кодовая база уже на Vue. Переписывать рабочий фронтенд на React — это затраты без выгоды для продукта.
- Команда уже на Vue. Найм и онбординг проще, когда строишь на том, что люди знают.
- Продукт — это интерфейс с большим количеством форм и состояния, где эргономика реактивности Vue реально экономит время.
Смысл говорить это прямо в том, что вы получаете инженера, который скажет, когда технология подходит, а когда нет, — а не того, кто продаёт вам переписывание.
Где я это отгружал
На ChatFood я собрал ключевые экраны клиентского потока заказа на Vue 3:
- Страница каталога заказа — просмотр меню и выбор позиций.
- Корзина — позиции, модификаторы и суммы, которые держатся в синхроне по мере изменения заказа.
- Оформление через Apple Pay — шаг оплаты, закрывающий заказ. (Подробнее о платёжной части — в разделе Payments.)
Я также вкладывался в дизайн-систему, общую для фронтенд-команды, чтобы мои компоненты совпадали с остальным продуктом. За этим потоком стоял бэкенд на Laravel — то есть я двигался по всему стеку, а не только по слою представления.
Если ваш продукт работает на Vue и нужен кто-то, кто войдёт в кодовую базу и начнёт отгружать — включая оформление и платёжные пути, — это работа, которую я уже делал. Обычно она ложится под разработку веб-приложений.
Почему я выбираю это
Composition API, который масштабируется вместе с экраном
Composition API во Vue 3 группирует состояние, производные значения и эффекты по фичам, а не по хукам жизненного цикла. Сложные экраны — корзины, потоки заказа, дашборды — остаются читаемыми по мере роста.
Single-file components держат интерфейс в одном месте
Шаблон, логика и scoped-стили живут в одном файле, поэтому изменение куска интерфейса локально. Для быстрой команды это проще ревью и меньше сюрпризов.
Быстрый вход в существующую кодовую базу
Я пришёл на фронтенд Vue 3 в ChatFood без предыдущего опыта Vue и отгрузил первый смерженный pull request в течение недели. Если ваш продукт на Vue, я возьмусь за него и продолжу отгружать.
Реактивность для интерфейсов с формами и состоянием
Vue отслеживает зависимости автоматически, убирая ручную обвязку на экранах, где корзина, суммы и доступность меняются вместе. Именно там это реально экономит время.
Сделано на этом
Частые вопросы
Вы делаете новые проекты на Vue или только поддерживаете существующие?
И то и другое, но я честен про дефолт. Для нового проекта я обычно рекомендую React и Next.js. Vue я беру, когда команда или кодовая база уже на нём, или когда продукт — это stateful-интерфейс, где эргономика реактивности Vue окупается. В таких случаях я делаю новые фичи от и до, а не только латаю существующие.
Как быстро вы становитесь продуктивным в существующей кодовой базе Vue?
Быстро. На ChatFood я пришёл на фронтенд Vue 3 без предыдущего опыта Vue, отгрузил первый смерженный pull request в течение недели и был сильным участником к концу первого месяца. Войти в незнакомую кодовую базу Vue — ровно та ситуация, которую я уже проходил.
Vue 2 или Vue 3?
Я работаю в Vue 3 с Composition API и single-file components — это современная и поддерживаемая линия. Если вы на старой кодовой базе Vue 2, реалистичный разговор — про путь миграции, который я могу оценить.
Можете ли вы сделать платежи и оформление на Vue?
Да. На ChatFood я собрал корзину и оформление через Apple Pay на Vue 3 — ту часть потока заказа, где реально двигаются деньги. См. [Payments](/technology/payments) о том, как я подхожу к оформлению и платёжной части.
Стоит ли переписывать моё Vue-приложение на React?
Обычно нет. Рабочий фронтенд на Vue — это актив, а не обуза; переписывание на React — реальные затраты без прямой выгоды для продукта. Я предпочту продолжать отгружать в вашем текущем стеке. Переписывание имеет смысл только при конкретной причине — и я скажу вам, если она есть.
Где вы находитесь и с кем работаете?
Я базируюсь в Ташкенте и работаю с клиентами по Узбекистану и Дубаю / ОАЭ. ChatFood была региональной платформой order-and-pay для рынка Ближнего Востока.
