Vue.js

Vue.js is a progressive JavaScript framework for building user interfaces, created by Evan You in 2014. Vue is designed to be incrementally adoptable: it can drop into a single page or anchor an entire application, and it borrows ideas from React (component model, virtual DOM) and Angular (templates, directives) while keeping the API approachable.

Core ideas

  • Single-file components (.vue). Template, script, and style co-located in one file.
  • Reactivity. Refs and reactive proxies (Vue 3) automatically re-render the UI when state changes.
  • Composition API. Function-based composition (similar in spirit to React hooks); the recommended approach for new Vue 3 code.
  • Options API. Class-like alternative; still supported for legacy familiarity.
  • Template syntax. Directives like v-if, v-for, v-model; built-in two-way binding for forms.

Common ecosystem

  • Framework: Nuxt (full-stack, SSR / SSG)
  • State management: Pinia (the modern Vuex)
  • Routing: Vue Router
  • Build tool: Vite (created by Evan You, default for Vue projects)
  • UI libraries: Vuetify, Element Plus, Naive UI, PrimeVue, Quasar
🔗
Related Terms
React, Angular, Svelte, Nuxt, Vite.

Subscribe to Sahil's Playbook

Clear thinking on product, engineering, and building at scale. No noise. One email when there's something worth sharing.
[email protected]
Subscribe
Mastodon