• Stars
    star
    5,830
  • Rank 6,958 (Top 0.2 %)
  • Language
    TypeScript
  • License
    MIT License
  • Created over 4 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

⚡ High-performance Vue language tooling based-on Volar.js

Vue Language Tools

⚡ High-performance Vue language tooling based-on Volar.js

Discord: https://discord.gg/5bnSSSSBbK

Packages

Community Integration

yaegassy/coc-volar 🤝 🅿️
Vue language client for coc.nvim

neovim/nvim-lspconfig 🤝
Vue language server configuration for Neovim
[Multiple servers set up tutorial]

mattn/vim-lsp-settings
Vue language server auto configuration for vim-lsp

sublimelsp/LSP-volar 🤝
Vue language client for Sublime

kabiaa/atom-ide-volar
Vue language client for Atom

emacs-lsp/lsp-mode (jadestrong/lsp-volar) ⚡ 🤝
Vue language client for Emacs

tommasongr/nova-vue
Vue language client for Nova

xiaoxin-sky/lapce-vue
Vue language client for Lapce

Kingwl/monaco-volar
Vue language support for Monaco on Browser

WebStorm
Built-in integration for @vue/language-server

* ⚡ support multiple servers
* 🤝 support take over mode
* 🅿️ support extra preview features

Contribution Guide

If you want to work on the volar extension follow these commands to set up your local development environment.

🔎 Note that you will need pnpm - you can download it here: https://pnpm.io/installation.

git clone https://github.com/vuejs/language-tools.git
cd language-tools
pnpm install
pnpm run build

The recommended way to develop the volar extension is to use the Debug Tools provided by VSCode. Alternatively, you can run one of the scripts defined in the package.json file.

You should always use the debug launch configs or package.json scripts defined in the root of the project.

Additional info for contributing to open source projects can be found here: https://docs.github.com/en/get-started/quickstart/contributing-to-projects

To develop with upstream Volar.js modules, you can setup workspace with https://github.com/volarjs/workspace.

High Level System Overview

flowchart LR
	%% IDEs
	VSC[VSCode]
	COC[coc.nvim]
	NEO[Neovim]
	VIM[vim-lsp]
	SUBLIME[Sublime]
	ATOM[Atom]
	EMACS[Emacs]
	NOVA[Nova]
	LAPCE[Lapce]

	%% Language Clients
	COC_VUE[yaegassy/coc-volar]
	NEO_VUE[neovim/nvim-lspconfig]
	VIM_VUE[mattn/vim-lsp-settings]
	SUBLIME_VUE[sublimelsp/LSP-volar]
	ATOM_VUE[kabiaa/atom-ide-volar]
	EMACS_VUE[jadestrong/lsp-volar]
	NOVA_VUE[tommasongr/nova-vue]
	LAPCE_VUE[xiaoxin-sky/lapce-vue]

	click COC_VUE "https://github.com/yaegassy/coc-volar"
	click NEO_VUE "https://github.com/neovim/nvim-lspconfig"
	click VIM_VUE "https://github.com/mattn/vim-lsp-settings"
	click SUBLIME_VUE "https://github.com/sublimelsp/LSP-volar"
	click ATOM_VUE "https://github.com/kabiaa/atom-ide-volar"
	click EMACS_VUE "https://github.com/jadestrong/lsp-volar"
	click NOVA_VUE "https://github.com/tommasongr/nova-vue"
	click LAPCE_VUE "https://github.com/xiaoxin-sky/lapce-vue"

	%% Volar - Extensions
	VSC_VUE[vscode-vue]
	VSC_TSVP[vscode-typescript-vue-plugin]

	click VSC_VUE "https://github.com/vuejs/language-tools/tree/master/packages/vscode-vue"
	click VSC_TSVP "https://github.com/vuejs/language-tools/tree/master/packages/vscode-typescript-vue-plugin"

	%% Volar - Packages
	VOLAR_VUE_SERVER["@vue/language-server"]
	VOLAR_VUE_TS["@vue/typescript"]
	VOLAR_VUE_CORE["@vue/language-core"]
	VOLAR_VUE_SERVICE["@vue/language-service"]
	VOLAR_PUG_SERVICE["@volar/pug-language-service"]
	VOLAR_TS_SERVICE["@volar/typescript-language-service"]
	VUE_TSC[vue-tsc]
	VUE_COMPONENT_META[vue-component-meta]
	TS_VUE_PLUGIN[typescript-vue-plugin]

	click VOLAR_VUE_SERVER "https://github.com/vuejs/language-tools/tree/master/packages/vue-language-server"
	click VOLAR_VUE_TS "https://github.com/vuejs/language-tools/tree/master/packages/vue-typescript"
	click VOLAR_VUE_CORE "https://github.com/vuejs/language-tools/tree/master/packages/vue-language-core"
	click VOLAR_VUE_SERVICE "https://github.com/vuejs/language-tools/tree/master/packages/vue-language-service"
	click VUE_TSC "https://github.com/vuejs/language-tools/tree/master/packages/vue-tsc"
	click VUE_COMPONENT_META "https://github.com/vuejs/language-tools/tree/master/packages/vue-component-meta"
	click TS_VUE_PLUGIN "https://github.com/vuejs/language-tools/tree/master/packages/typescript-vue-plugin"
	click VOLAR_PUG_SERVICE "https://github.com/vuejs/language-tools/tree/master/packages/pug-language-service"
	click VOLAR_TS_SERVICE "https://github.com/vuejs/language-tools/tree/master/packages/typescript-language-service"

	%% Extrnal Packages
	HTML_SERVICE[vscode-html-languageservice]
	CSS_SERVICE[vscode-css-languageservice]
	JSON_SERVICE[vscode-json-languageservice]
	%% TS[typescript]
	VSC_TS[vscode.typescript-language-features]
	VUE_REPL["@vue/repl"]
	MONACO_VOLAR[Kingwl/monaco-volar]
	%% VITE_PLUGIN_CHECKER[fi3ework/vite-plugin-checker]
	%% COMPILE_VUE_SFC[leonzalion/compile-vue-sfc]

	click HTML_SERVICE "https://github.com/microsoft/vscode-html-languageservice"
	click CSS_SERVICE "https://github.com/microsoft/vscode-css-languageservice"
	click JSON_SERVICE "https://github.com/microsoft/vscode-json-languageservice"
	click TS "https://github.com/microsoft/TypeScript"
	click VSC_TS "https://github.com/microsoft/vscode/tree/main/packages/typescript-language-features"
	click VUE_REPL "https://github.com/vuejs/repl"
	click MONACO_VOLAR "https://github.com/Kingwl/monaco-volar"
	%% click VITE_PLUGIN_CHECKER "https://github.com/fi3ework/vite-plugin-checker"
	%% click COMPILE_VUE_SFC "https://github.com/leonzalion/compile-vue-sfc"

	subgraph VUE_CLIENTS[Language Clients]
	  direction LR
	  VUE_CLIENT_SEMANTIC[Semantic Features]
	  VUE_CLIENT_SYNTACTIC[Syntactic Features]
	end

	click VUE_CLIENT_SEMANTIC "https://github.com/vuejs/language-tools/discussions/393#discussioncomment-1213736"
	click VUE_CLIENT_SYNTACTIC "https://github.com/vuejs/language-tools/discussions/393#discussioncomment-1213736"

	subgraph Embedded Language Services
	  direction LR
	  VOLAR_TS_SERVICE
	  VOLAR_PUG_SERVICE
	  HTML_SERVICE
	  CSS_SERVICE
	  JSON_SERVICE
	end

	VSC --> VSC_VUE
	COC --> COC_VUE
	NEO --> NEO_VUE
	SUBLIME --> SUBLIME_VUE
	ATOM --> ATOM_VUE
	EMACS --> EMACS_VUE
	NOVA --> NOVA_VUE
	VIM --> VIM_VUE
	LAPCE --> LAPCE_VUE

	VSC_VUE --> VUE_CLIENTS
	COC_VUE --> VUE_CLIENTS
	NEO_VUE --> VUE_CLIENTS
	SUBLIME_VUE --> VUE_CLIENTS
	ATOM_VUE --> VUE_CLIENTS
	EMACS_VUE --> VUE_CLIENTS
	NOVA_VUE --> VUE_CLIENTS
	VIM_VUE --> VUE_CLIENTS
	LAPCE_VUE --> VUE_CLIENTS

	VUE_CLIENTS -- Language Server Protocol --> VOLAR_VUE_SERVER

	VSC --> VSC_TS
	VSC_TS --> VSC_TSVP
	VSC_TSVP --> TS_VUE_PLUGIN
	VOLAR_VUE_SERVER --> VOLAR_VUE_SERVICE
	VUE_TSC --> VOLAR_VUE_TS
	%% VITE_PLUGIN_CHECKER --> VUE_TSC
	%% COMPILE_VUE_SFC --> VUE_TSC
	TS_VUE_PLUGIN --> VOLAR_VUE_TS

	VUE_REPL --> MONACO_VOLAR
	MONACO_VOLAR --> VOLAR_VUE_SERVICE

	%% VOLAR_VUE_TS --> TS
	VUE_COMPONENT_META --> VOLAR_VUE_CORE
	VOLAR_VUE_TS --> VOLAR_VUE_CORE

	VOLAR_VUE_SERVICE --> VOLAR_VUE_CORE
	VOLAR_VUE_SERVICE --> VOLAR_TS_SERVICE
	VOLAR_VUE_SERVICE --> VOLAR_PUG_SERVICE
	VOLAR_VUE_SERVICE --> HTML_SERVICE
	VOLAR_VUE_SERVICE --> CSS_SERVICE
	VOLAR_VUE_SERVICE --> JSON_SERVICE

Full-time Support by


Just click, and start coding.


More Repositories

1

vue

This is the repo for Vue 2. For Vue 3, go to https://github.com/vuejs/core
TypeScript
207,650
star
2

awesome-vue

🎉 A curated list of awesome things related to Vue.js
71,970
star
3

core

🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript
46,527
star
4

vue-cli

🛠️ webpack-based tooling for Vue.js Development
JavaScript
29,761
star
5

vuex

🗃️ Centralized State Management for Vue.js.
JavaScript
28,416
star
6

devtools-v6

⚙️ Browser devtools extension for debugging Vue.js applications.
TypeScript
24,600
star
7

vuepress

📝 Minimalistic Vue-powered static site generator
JavaScript
22,558
star
8

vue-router

🚦 The official router for Vue 2
JavaScript
18,993
star
9

pinia

🍍 Intuitive, type safe, light and flexible Store for Vue using the composition api with DevTools support
TypeScript
13,016
star
10

vitepress

Vite & Vue powered static site generator.
TypeScript
12,445
star
11

vue-hackernews-2.0

HackerNews clone built with Vue 2.0, vue-router & vuex, with server-side rendering
JavaScript
10,957
star
12

petite-vue

6kb subset of Vue optimized for progressive enhancement
TypeScript
9,026
star
13

apollo

🚀 Apollo/GraphQL integration for VueJS
TypeScript
6,013
star
14

vue-class-component

ES / TypeScript decorator for class-style Vue components.
TypeScript
5,806
star
15

vetur

Vue tooling for VS Code.
TypeScript
5,739
star
16

v2.vuejs.org

📄 Documentation for Vue 2
JavaScript
5,036
star
17

vue-loader

📦 Webpack loader for Vue.js components
TypeScript
4,986
star
18

rfcs

RFCs for substantial changes / feature additions to Vue core
4,862
star
19

eslint-plugin-vue

Official ESLint plugin for Vue.js
JavaScript
4,458
star
20

composition-api

Composition API plugin for Vue 2
TypeScript
4,193
star
21

router

🚦 The official router for Vue.js
TypeScript
3,914
star
22

vuefire

🔥 Firebase bindings for Vue.js
TypeScript
3,857
star
23

create-vue

🛠️ The recommended way to start a Vite-powered Vue project
Vue
3,667
star
24

vue-test-utils

Component Test Utils for Vue 2
JavaScript
3,566
star
25

vue-rx

👁️ RxJS integration for Vue.js.
JavaScript
3,349
star
26

docs

📄 Documentation for Vue 3
Vue
2,933
star
27

vue-touch

Hammer.js wrapper for Vue.js
JavaScript
2,723
star
28

vuex-router-sync

Effortlessly keep vue-router and vuex store in sync.
JavaScript
2,515
star
29

vue-hackernews

HackerNews clone with Vue.js
Vue
2,510
star
30

vue-vapor

Vue Vapor is a variant of Vue that offers rendering without the Virtual DOM.
TypeScript
1,909
star
31

v2.cn.vuejs.org

🇨🇳 Chinese translation for v2.vuejs.org
JavaScript
1,865
star
32

babel-plugin-transform-vue-jsx

babel plugin for vue 2.0 jsx
JavaScript
1,846
star
33

babel-plugin-jsx

JSX for Vue 3
TypeScript
1,713
star
34

vue-syntax-highlight

💡 Sublime Text syntax highlighting for single-file Vue components
1,485
star
35

jsx-vue2

monorepo for Babel / Vue JSX related packages
JavaScript
1,468
star
36

devtools-next

The next iteration of Vue DevTools
TypeScript
1,336
star
37

ui

💻 UI components for official Vue organization apps
Vue
1,329
star
38

vue-docs-zh-cn

该项目已不再维护,有劳通过 Vue 官网查阅最新的文档
1,324
star
39

vueify

Browserify transform for single-file Vue components
JavaScript
1,168
star
40

vue-web-component-wrapper

(Vue 2 only) Wrap a Vue component as a web component / custom element.
JavaScript
1,047
star
41

test-utils

Vue Test Utils for Vue 3
TypeScript
1,038
star
42

docs-next-zh-cn

🇨🇳 Chinese translation for v3.vuejs.org
Vue
951
star
43

repl

Vue SFC REPL as a Vue 3 component
TypeScript
925
star
44

roadmap

🗺️ Roadmap for the Vue.js project (archive)
846
star
45

rollup-plugin-vue

Roll .vue files
TypeScript
843
star
46

vue-jest

Jest Vue transformer
JavaScript
748
star
47

vue-migration-helper

CLI tool to aid in migration from Vue 1.x to 2.0
JavaScript
594
star
48

vue-dev-server

A POC dev server that allows you to import `*.vue` files via native ES modules imports.
TypeScript
573
star
49

vue2-ssr-docs

Vue.js Server-Side Rendering Guide (for Vue 2)
563
star
50

vue-hot-reload-api

🌶️ Hot reload API for Vue components
JavaScript
466
star
51

vue-animated-list

A Vue.js plugin for easily animating `v-for` rendered lists.
JavaScript
462
star
52

vue-eslint-parser

The ESLint custom parser for `.vue` files.
TypeScript
444
star
53

vue-next-webpack-preview

JavaScript
424
star
54

vue-async-data

Async data loading plugin
JavaScript
417
star
55

vue-component-compiler

Compile a single file Vue component into a CommonJS module.
TypeScript
343
star
56

vue-cli-plugin-vue-next

A Vue CLI plugin for trying out vue-next (experimental)
JavaScript
339
star
57

blog

📝 The official Vue.js blog
Vue
331
star
58

eslint-config-vue

JavaScript
327
star
59

component-compiler-utils

Lower level utilities for compiling Vue single file components
TypeScript
321
star
60

tsconfig

Base tsconfig for Vue 3 projects.
301
star
61

vue-test-utils-jest-example

Example project using Jest + vue-test-utils together
JavaScript
296
star
62

vue-template-explorer

Vue template compilation explorer
Vue
267
star
63

vue-codemod

Vue.js codemod scripts
TypeScript
261
star
64

events

Source code for the new Vue.js Events page
Vue
250
star
65

jp.vuejs.org

🇯🇵 Japanese translation for vuejs.org
JavaScript
244
star
66

theme

VitePress theme for vuejs.org.
Vue
236
star
67

v3-migration-guide

Vue 2 -> Vue 3 migration guide
JavaScript
218
star
68

vue-element

register a custom element with Vue.js.
JavaScript
209
star
69

vue-curated

🖼️ The curated Vue packages list
178
star
70

Discussion

Vue.js discussion
167
star
71

vuex-observable

Consume Vuex actions as Observables using RxJS 5
JavaScript
155
star
72

vue-issue-helper

Vue
145
star
73

composition-api-converter

Automatically migrate components to the Function API
JavaScript
145
star
74

art

🎨 Artworks
127
star
75

babel-preset-vue-app

Babel preset for Vue app.
JavaScript
124
star
76

eslint-config-typescript

eslint-config-typescript for vue projects
JavaScript
115
star
77

vue-router-demos

Live demos for vue-router
Vue
107
star
78

eslint-plugin-vue-libs

Eslint plugin for Vue internal development
JavaScript
106
star
79

laravel-elixir-vue-2

Laravel Elixir Vue 2.0 support plugin
JavaScript
105
star
80

vue-test-utils-mocha-webpack-example

Example project using mocha-webpack and vue-test-utils
JavaScript
104
star
81

composition-api-rfc

Vuepress render for the Composition API RFC
JavaScript
104
star
82

ecosystem-ci

Vue Ecosystem CI
TypeScript
92
star
83

babel-preset-vue

Babel preset for transforming Vue JSX.
JavaScript
88
star
84

vue-test-utils-getting-started

Demo project for `vue-test-utils`
JavaScript
81
star
85

vue-webpack-meteor-example

Example using Vue with Meteor, while leveraging the normal Webpack + NPM workflow for your front-end.
Vue
78
star
86

eslint-config-airbnb

ESLint Shareable Configs for Airbnb JavaScript Style Guide in Vue.js Projects
JavaScript
71
star
87

vue-requests

Need a Vue.js module or looking for ideas?
69
star
88

news.vuejs.org

Vue.js News Portal
Vue
67
star
89

vue-curated-client

Official curation list client
Vue
65
star
90

eslint-config-prettier

eslint-config-prettier for vue-cli
JavaScript
65
star
91

vue-test-utils-typescript-example

Example project using TypeScript, Jest + vue-test-utils together
Vue
61
star
92

vue-template-es2015-compiler

Support a subset of handy ES2015 features in Vue 2.0 templates.
JavaScript
61
star
93

create-vue-templates

Snapshots of the generated templates of `npm create vue@latest`
Vue
44
star
94

create-eslint-config

Utility to setup ESLint in Vue.js projects.
JavaScript
43
star
95

eslint-config-standard

ESLint Shareable Configs for JavaScript Standard Style in Vue.js Projects
JavaScript
40
star
96

vue-ssr-html-stream

Transform stream to simplify Vue SSR streaming
HTML
39
star
97

it.vuejs.org

Italian translation for vuejs.org 🇮🇹
JavaScript
35
star
98

systemjs-plugin-vue

SystemJS plugin for Vue single file components
JavaScript
34
star
99

test-utils-docs

Docs for vue-test-utils-next
JavaScript
33
star
100

vue-curated-server

JavaScript
31
star