A standards-based static type checker for Python, with a command-line tool and a Visual Studio Code extension, built for large codebases.
vuejs/language-tools
Vue language tooling built on Volar.js, providing the Vue editor language server, vue-tsc type checker and related packages.
- Stars
- 6,746
- Forks
- 586
- Open issues
- 60
- Last commit
- 6 days ago
What is it?
Vue Language Tools is the official toolset for giving editors and the command line full type-aware language support for Vue single-file components. It is built on Volar.js and includes the Vue (Official) VS Code extension, a language server that other editors can connect to, and the vue-tsc command for type-checking Vue projects outside an editor.
The project is split into packages: a core module that parses SFCs and generates virtual code for type checking, a TypeScript language service plugin, and helpers such as vue-component-meta, which extracts component props, events and slot types. Pug template support and Vitepress and petite-vue language support are also covered by the extension.
A typical use is adding vue-tsc to a project's dev dependencies and running it as a type-check script in CI. Compiler behavior can be adjusted through a vueCompilerOptions block in tsconfig.json.
Key features
- 01Official VS Code extension for Vue, Vitepress and petite-vue
- 02Command-line type checking with vue-tsc
- 03Language server usable by other editors such as Neovim and Sublime
- 04TypeScript language service plugin for Vue files
- 05Component props, events and slots type extraction via vue-component-meta
- 06Pug template support
Use cases
- Getting full type-aware editing support for Vue components in VS Code
- Running type checks on Vue projects in CI or pre-commit hooks
- Connecting Neovim, Sublime or other LSP-capable editors to Vue
- Extracting component type information for documentation or tooling
Quick start
- 1
Install the Vue (Official) extension in VSCode
- 2
Install vue-tsc and typescript as dev dependencies for command-line type checking
npm install vue-tsc typescript --save-dev - 3
Add a type-check script that runs vue-tsc --noEmit to package.json
Topics
FAQ
- What is language-tools?
- Vue language tooling built on Volar.js, providing the Vue editor language server, vue-tsc type checker and related packages. Vue Language Tools is the official toolset for giving editors and the command line full type-aware language support for Vue single-file components. It is built on Volar.js and includes the Vue (Official) VS Code extension, a language server that other editors can connect to, and the vue-tsc command for type-checking Vue projects outside an editor.
- Is language-tools free to use? What license does it have?
- language-tools is open source under the MIT license. Check the license terms before using it in commercial products.
- Is language-tools still maintained?
- Actively maintained. The last commit to language-tools was on Nov 1, 2026.
- What can I use language-tools for?
- Getting full type-aware editing support for Vue components in VS Code Running type checks on Vue projects in CI or pre-commit hooks Connecting Neovim, Sublime or other LSP-capable editors to Vue Extracting component type information for documentation or tooling
- How do I install language-tools?
- Install the Vue (Official) extension in VSCode Install vue-tsc and typescript as dev dependencies for command-line type checking: npm install vue-tsc typescript --save-dev Add a type-check script that runs vue-tsc --noEmit to package.json
- Where can I get language-tools?
- The source code and installation instructions are on GitHub: https://github.com/vuejs/language-tools
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Official Microsoft C/C++ extension for VS Code, providing IntelliSense editing and debugging for C and C++ code.
A fast Python type checker and language server, written in Rust, with IDE features like navigation, completion and semantic highlighting.
A typed superset of JavaScript that adds optional static types and compiles to readable, standards-based JavaScript.
A static analysis tool for PHP that finds bugs in code without running it.
Pure-Python runtime type checker that enforces PEP type hints on functions, classes and variables with minimal overhead.