Skip to content
What is Vue and what are its main features?What is the Virtual DOM and how does Vue use it?Is Vue a library or a framework? Why?What JavaScript do you need to learn before Vue?How do you create a Vue project from scratch?What is Vite and how does it work?How do Vue DevTools help with debugging?What's the difference between v-if and v-show?What's the purpose of :key in v-for?Why can't you use v-if and v-for on the same element?Why doesn't v-show work on template elements?How does event handling work in Vue?How does list rendering work with v-for?What is conditional rendering in Vue?How do you inject raw HTML in Vue and why is it dangerous?Why does mutating props directly cause warnings?How do scoped styles, CSS Modules, and dynamic classes work in Vue?What is the difference between props and state in Vue?What is lifting state up and when should you do it?What is the Composition API and how does it differ from the Options API?What is script setup?What are lifecycle hooks in Vue 3?What's the difference between ref and reactive?Why do I lose reactivity when destructuring a reactive object?Why does forgetting .value with ref cause bugs?Why doesn't reactive() work with primitives?Can you initialize state with a prop value? What happens?Why should you initialize a search ref as '' instead of null?What is a composable?What is Pinia and how does it differ from Vuex?How does Vuex work?How do you declare props with TypeScript in Vue 3?How do you emit events with TypeScript?What is Nuxt and what rendering modes does it support?How does file-based routing work in Nuxt?What is auto-imports in Nuxt and how does it work?What are Nuxt layouts and how do they work?What is the Nuxt directory structure convention?
How do you create custom directives in Vue?What is v-model and how does it differ from .sync in Vue 2?What are event modifiers and why does order matter?How does v-model work on custom components?What are slots and what are they used for?What is Provide/Inject?What are Teleport, Fragments, and Suspense?Why does my template ref return null?Why do undeclared emits fire twice?Why doesn't scoped CSS style child component elements?Why don't scoped styles apply to teleported content?Why doesn't mutating an object through defineModel update the parent?How do template refs work?What are dynamic components and how does KeepAlive work?What are async components and defineAsyncComponent?How do Transition and TransitionGroup work?How do multiple v-model bindings work on a component?What are fallthrough attributes?What is the difference between controlled and uncontrolled inputs?How do render functions and JSX work in Vue?How does Suspense work for async components?How would you implement drag and drop in Vue?What is the difference between a component and an element in Vue?Why can spreading all props to a child component be a bad idea?How would you explain v-model to someone coming from React?How do you force a component to re-render?What are functional components and when are they useful?How does the `is` attribute work for dynamic component rendering?What is defineExpose and when is it needed?Can you use await directly in script setup? When?What's the difference between watch and watchEffect?How does Vue 3's reactivity system work?Why does my computed property not update when a dependency changes?Why does my watcher receive the same value for old and new?Why does my watchEffect miss dependencies after an await?Why does sorting an array inside computed mutate the original data?What is nextTick and when do you need it?Does reassigning a property on a reactive object break reactivity?What happens when you use Object.freeze() on reactive data?What is readonly and shallowReadonly?How would you build a composable for data fetching?How would you implement debounce on a search input?What is VueUse and what are its most useful composables?How do you cancel an API request in a composable?How do you handle errors in async composables?How does Pinia work internally? (stores, state, getters, actions)When should you use Pinia vs a composable vs local state?How does Vue Router work and what are navigation guards?How do you type slots with defineSlots?How do you type template refs in TypeScript?How do you type event handlers in Vue templates?How does withDefaults work and what are its gotchas?How do you test Vue components with Vitest?How do you configure Vitest for a Vue project?How do you test a Pinia store?How would you implement infinite scroll with Vue?What is tree-shaking and how does Vue 3 support it?How does the Vue plugin system work?What is the container-presentational pattern in Vue?How would you handle internationalization (i18n) in Vue?What is Flux/unidirectional data flow and how does Vue implement it?What is Server Side Rendering and what are its advantages?What is hydration and how does it work in Vue?How do you avoid platform-specific API issues in SSR?What is the difference between useFetch, useAsyncData, and $fetch?What are Nuxt middleware and how do they work?How do Nuxt modules work and when would you create one?What is Nitro and how do server routes work in Nuxt?How does hybrid rendering (route rules) work in Nuxt?How does state management work in Nuxt? (useState, Pinia)How do you deploy a Nuxt app?What are the differences between Nuxt 2 and Nuxt 3?What is the Nuxt payload and how does it prevent double-fetching?What happens if you call useFetch inside an event handler?What is the difference between server middleware and route middleware in Nuxt?How do you handle accessibility in Vue?
What is v-once and v-memo? When should you use them?How would you design a shared component library?How would you handle complex forms in Vue?How do custom v-model modifiers work?How does error handling work in Vue?What are all the compiler macros in Vue?What is the difference between Composition API and React Hooks?What are higher-order components (HOC) equivalent in Vue?What is getCurrentInstance() and why should you avoid it?When would you use shallowRef / shallowReactive?What's the difference between computed and watch?Why do watchers created inside async callbacks cause memory leaks?What is effectScope and when would you use it?How do toRefs, toRef, and toValue work?When should you use markRaw and toRaw?What is the reactivity proxy identity hazard?How does Vue batch DOM updates?How do writable computed properties work?How would you implement optimistic updates in Vue?What is customRef and when would you use one?How do reactive Maps and Sets work in Vue 3?How would you migrate a Vuex module to Pinia?What are Pinia plugins and how do you create one?What is Pinia Colada and how does it handle async state?How would you implement authentication with Vue Router?How do generic components work with TypeScript?What are the key TypeScript utility types for Vue?What are the limitations of type-based defineProps?How would you test a composable that fetches data?How do you test a composable that uses setTimeout?How do you test components that use async setup and Suspense?How would you optimize performance in a Vue app?How would you implement lazy loading and code splitting?How would you virtualize a list of thousands of items?Why should you avoid component abstraction in large lists?How do props stability optimizations work?How does computed object stability affect re-renders?When should you use the updated hook and what are its performance implications?A page takes 3-4 seconds to become interactive. How do you diagnose and fix it?How would you structure a large Vue project?What is the compound components pattern in Vue?How would you build a shopping cart with Vue?How would you structure a micro-frontend with Vue?How would you architect a dashboard with multiple widgets that each fetch their own data?How do you architect a Vue 3 app to scale across multiple teams?What are common anti-patterns in large Vue codebases?What causes SSR hydration mismatches and how do you fix them?What are Suspense SSR hydration issues and how do you work around them?What are Nuxt layers and when would you use them?What is SSR cross-request state pollution and how do you avoid it?How do you handle authentication in Nuxt 3?How do you debug SSR requests that don't go through the browser?What are the main friction points when migrating Nuxt 2 to Nuxt 3?How would you implement global error handling in a Vue app?How would you plan a Vue 2 to Vue 3 migration?How do you manage focus in Vue SPAs?

Released under the MIT License.