Vue is a progressive framework for building user interfaces. Unlike a monolith that dictates every layer, Vue focuses on the view while letting you adopt routing, state management, and build tooling at your own pace.
Core ideas
- Components — reusable units with a template, logic, and scoped styles (in real projects)
- Reactivity — when data changes, dependent UI updates automatically
- Templates — HTML extended with directives like
v-if,v-for, and@click - Composition API — organize logic in
setup()and reusable composables (Vue’s answer to custom hooks)
Compared to jQuery or vanilla JS
Vanilla code often reads: “find this button, attach listener, find that div, set innerHTML.” Vue reads: “when count is 3, render this markup.” The reactive state is the source of truth; the template follows.
Important interview questions and answers
- Q: Is Vue a library or a framework?
A: Often called a framework because it ships opinions (templates, reactivity, SFC tooling), but it remains progressive—you can use it as a view layer only. - Q: What is Vue’s reactivity system?
A: A proxy-based tracker that knows which UI pieces depend on which data, so updates stay granular without manual DOM diffing in app code. - Q: Why is Vue popular?
A: Gentle learning curve, excellent docs, strong DX with Vite, flexible adoption, and solid enterprise usage alongside React and Angular.
Self-check
- Name two things Vue gives you that raw
document.querySelectordoes not. - What does “progressive framework” mean in one sentence?