Open-Source Wikis

/

Vue.js

/

vuejs/core overview

vuejs/core

vuejs/core overview

Vue.js is a progressive JavaScript framework for building user interfaces. This repository (vuejs/core) hosts Vue 3 — a complete rewrite of Vue 2 that ships a reactivity system, a virtual DOM renderer, a template compiler, and a Single-File Component (SFC) toolchain as a set of cooperating packages under one monorepo.

W1: SFC Playground boots and renders default component

W3: SFC SSR mode toggle exposes SSR output

The current source corresponds to Vue 3.5.x with the 3.6 line in active development. The repo is the upstream for the vue npm package and all @vue/* scoped packages that power both bundler-based and CDN-based usage.

What lives here

The codebase is split into eleven public packages and a handful of private workspace packages, all coordinated via pnpm workspaces and Rollup:

  • Reactivity (packages/reactivity) — the standalone, framework-agnostic implementation of ref, reactive, computed, effect, watch, and effect scopes.
  • Runtime core (packages/runtime-core) — the platform-agnostic component system, virtual DOM renderer, scheduler, and lifecycle/composition APIs.
  • Runtime DOM (packages/runtime-dom) — the browser-targeted runtime: DOM node operations, prop patching, <Transition>/<TransitionGroup>, custom element support, and DOM-only directives (v-show, v-model).
  • Runtime test (packages/runtime-test) — a tiny in-memory renderer used by Vue's own test suite to exercise renderer logic without a DOM.
  • Server renderer (packages/server-renderer) — renderToString, streaming SSR, and the SSR helper runtime.
  • Compiler core (packages/compiler-core) — the platform-agnostic template compiler: tokenizer, parser, AST, transform pipeline, and codegen.
  • Compiler DOM (packages/compiler-dom) — the browser-flavored compiler that adds DOM-specific transforms and directive handling.
  • Compiler SFC (packages/compiler-sfc) — the Single-File Component toolchain (<template>, <script setup>, <style scoped>, asset URL rewriting, type-based macros).
  • Compiler SSR (packages/compiler-ssr) — generates string-concatenation render functions optimized for server rendering.
  • Shared (packages/shared) — environment-agnostic helpers (patch flags, shape flags, normalizers, code frame, escape) used by both runtime and compiler.
  • vue (packages/vue) — the public-facing aggregate package. Ships the "full build" (compiler + runtime), runtime-only build, JSX types, and is what users import vue from 'vue'.
  • vue-compat (packages/vue-compat) — Vue 2 compatibility build, opt-in via configuration.

For the high-level interaction between these, see architecture. For each package's internals, see the packages section.

Who uses this

  • Application authors consume the vue package, either through a bundler (esm-bundler builds), a CDN (global builds), or via the SFC toolchain integrated into Vite, vue-loader, or the SFC Playground.
  • Custom-renderer authors (Vue Native, Onsen UI, Lottie renderers, the runtime-test package itself) import from @vue/runtime-core directly and supply their own nodeOps/patchProp to drive non-DOM targets.
  • Tooling authors (Vite's plugin-vue, Volar, vue-loader, the @vue/repl SFC playground) consume @vue/compiler-sfc to parse .vue files and generate render functions and HMR-aware module code.
  • Architecture — package graph, render pipeline, and reactive update cycle
  • Getting started — clone, install, build, test, and run the SFC Playground
  • Glossary — Vue-specific vocabulary used throughout this wiki and the source
  • How to contribute — workflow, branches, conventions
  • Packages — per-package deep dives
  • Features — cross-cutting capabilities (reactivity, compilation, SSR, hydration)
  • Reference — feature flags, dependencies, configuration

Built by Factory AutoWiki from public repository content. It is a generated preview for codebase exploration, not source-maintained documentation.

vuejs/core overview – Vue.js wiki | Factory