~/oybek.dev
Book a call
technology
Front-end· since 2021

Vue 3v3

I work in Vue 3 when a team or codebase is already on it — and I'm fully productive in it. I joined ChatFood's Vue front-end with zero Vue experience and was shipping the order catalog, cart, and Apple Pay checkout within weeks.

How I came to Vue 3

React and Next.js are my default front-end stack. Vue is the tool I reach for when a team or codebase is already on it — and when I do, I work in it at full speed.

That confidence isn't theory. On ChatFood — the regional order-and-pay platform later acquired by Deliverect — I was hired as a backend developer. Part-way in, the team needed hands on the Vue 3 front-end, and I moved across with zero Vue experience. First merged pull request inside a week. By the end of the first month I was one of the stronger contributors on the front-end, learning the full Vue 3 concept set as I shipped real features.

So when a client's product is built on Vue, switching it to React is rarely the right call. I pick up the existing codebase and keep delivering.

What Vue 3 does well

Vue 3 is a pragmatic front-end framework. It gives you a reactivity model and a component system that are quick to read and quick to be productive in — which is exactly why I could go from zero to shipping in a week.

Composition API and reactivity

The Composition API lets you group logic by concern instead of by lifecycle hook. Reactive state, derived values, and side effects for one feature live together, so a complex screen stays legible as it grows. Vue's reactivity tracks dependencies for you, which removes a whole class of manual wiring — useful on stateful UIs like ordering flows, where carts, totals, and availability all move together.

Single-file components

A Vue single-file component co-locates template, logic, and scoped styles in one file. For a fast-moving product team that's a real advantage: the markup, the behaviour, and the CSS for a piece of UI sit in one place, so changes are local and reviews are easier.

A gentle ramp that holds up

Vue is approachable without being shallow. The mental model is small enough to onboard a backend developer in days, and complete enough to build a production ordering flow on. I lived both ends of that: onboarding fast, then contributing to the shared design system the rest of the team built on.

Abstract neon-green circuit traces forming nested component blocks on near-black, evoking single-file components
Vue 3's single-file components keep template, logic, and style together.

Vue vs React — my honest take

I won't oversell Vue as my primary stack, because it isn't. React and Next.js are where I do most of my front-end work, and for a greenfield project that's usually what I recommend — the ecosystem, the hiring pool, and my own depth all point there.

When would I actually pick Vue?

  • The codebase is already Vue. Rewriting a working front-end to React is a cost with no product upside.
  • The team is already Vue. Hiring and onboarding are easier when you build on what people know.
  • The product is a form- and state-heavy UI where Vue's reactivity ergonomics genuinely shave time.

The point of saying this plainly is that you get an engineer who'll tell you when a technology is and isn't the right fit — not one selling you a rewrite.

Where I've shipped it

On ChatFood, I built core surfaces of the customer ordering flow in Vue 3:

  • The order catalog page — the menu browse-and-select experience.
  • The cart — line items, modifiers, and totals kept in sync as the order changes.
  • Apple Pay checkout — the payment step that closes the order. (More on the payments side under Payments.)

I also contributed to the design system the front-end team shared, so the components I shipped matched the rest of the product. The backend behind that flow was Laravel — so I was moving across the full stack, not just the view layer.

If your product runs on Vue and you need someone who can step into the codebase and ship — including the checkout and payment paths — that's work I've done. It usually lands under web app development.

Why I build with it

01

Composition API that scales with the screen

Vue 3's Composition API groups state, derived values, and effects by feature instead of by lifecycle hook. Complex screens — carts, ordering flows, dashboards — stay legible as they grow.

02

Single-file components keep UI in one place

Template, logic, and scoped styles live in one file, so a change to a piece of UI is local. For a fast-moving team that means easier reviews and fewer surprises.

03

Fast to step into an existing codebase

I joined ChatFood's Vue 3 front-end with no prior Vue experience and shipped my first merged pull request inside a week. If your product runs on Vue, I can pick it up and keep delivering.

04

Reactivity built for form- and state-heavy UIs

Vue tracks dependencies automatically, which removes manual wiring on screens where carts, totals, and availability all move together. That's where it genuinely shaves time.

Built with it

FAQ

Do you build new projects in Vue or only maintain existing ones?

Both, but I'm honest about the default. For a new build I usually recommend React and Next.js. I reach for Vue when a team or codebase is already on it, or when the product is a state-heavy UI where Vue's reactivity ergonomics pay off — and in those cases I build new features end to end, not just patch existing ones.

How quickly can you get productive in an existing Vue codebase?

Fast. On ChatFood I joined the Vue 3 front-end with no prior Vue experience, shipped my first merged pull request inside a week, and was a strong contributor by the end of the first month. Picking up an unfamiliar Vue codebase is exactly the situation I've already been through.

Vue 2 or Vue 3?

I work in Vue 3 with the Composition API and single-file components — the modern, supported line. If you're on an older Vue 2 codebase, the realistic conversation is about a migration path, which I can scope.

Can you handle payments and checkout in Vue?

Yes. On ChatFood I built the cart and the Apple Pay checkout in Vue 3 — the part of the ordering flow where the money actually moves. See [Payments](/technology/payments) for how I approach the checkout and payment side.

Should I rewrite my Vue app in React?

Usually not. A working Vue front-end is an asset, not a liability — rewriting it to React is a real cost with no direct product benefit. I'd rather keep delivering in your existing stack. A rewrite only makes sense when there's a concrete reason, and I'll tell you if there is one.

Where are you based and who do you work with?

I'm based in Tashkent and work with clients across Uzbekistan and Dubai / UAE. ChatFood was a regional order-and-pay platform serving the Middle East market.

Also in Front-end