By zircote
Vue language server plugin for Claude Code with Volar integration and automated hooks for linting and formatting
npx claudepluginhub zircote/lsp-marketplace --plugin vue-lspA Claude Code plugin providing comprehensive Vue.js development support through:
# Run the setup command (after installing the plugin)
/setup
Or manually:
# Install vue-language-server (Volar)
npm install -g @vue/language-server typescript
# Install development tools
npm install -g eslint prettier
The plugin configures vue-language-server (Volar) for Claude Code via .lsp.json:
{
"vue": {
"command": "vue-language-server",
"args": ["--stdio"],
"extensionToLanguage": {
".vue": "vue"
},
"transport": "stdio"
}
}
Capabilities:
All hooks run afterWrite and are configured in hooks/hooks.json.
| Hook | Trigger | Description |
|---|---|---|
vue-format-on-edit | **/*.vue | Auto-format with Prettier |
vue-lint-on-edit | **/*.vue | Lint with ESLint (vue plugin) |
vue-type-check | **/*.vue | Type check Vue components |
| Hook | Trigger | Description |
|---|---|---|
js-format-on-edit | **/*.js,ts,jsx,tsx | Format JS/TS files |
js-lint-on-edit | **/*.js,ts,jsx,tsx | Lint JS/TS files |
| Hook | Trigger | Description |
|---|---|---|
vue-todo-fixme | **/*.vue,js,ts | Surface TODO/FIXME/XXX/HACK comments |
vue-security-check | **/*.vue,js,ts | Detect eval/innerHTML/v-html usage |
| Hook | Trigger | Description |
|---|---|---|
npm-audit | **/package.json | Security audit of dependencies |
json-validate | **/*.json | Validate JSON syntax |
| Tool | Installation | Purpose |
|---|---|---|
vue-language-server | npm install -g @vue/language-server | LSP server (Volar) |
typescript | npm install -g typescript | Type checking |
| Tool | Installation | Purpose |
|---|---|---|
eslint | npm install -g eslint | Linting |
eslint-plugin-vue | Project-level | Vue-specific linting |
prettier | npm install -g prettier | Formatting |
| Tool | Installation | Purpose |
|---|---|---|
@vitejs/plugin-vue | Project-level | Vite integration |
vue-tsc | Project-level | Vue TypeScript checking |
vue-lsp/
├── .claude-plugin/
│ └── plugin.json # Plugin metadata
├── .lsp.json # vue-language-server configuration
├── commands/
│ └── setup.md # /setup command
├── hooks/
│ ├── hooks.json # Hook definitions
│ └── scripts/
│ └── vue-hooks.sh
├── tests/
│ └── Sample.vue # Sample Vue 3 component
├── CLAUDE.md # Project instructions
└── README.md # This file
package.json exists in project rootvue-language-server --versioncat .lsp.jsontsconfig.json with Vue support:{
"compilerOptions": {
"target": "ES2022",
"module": "ESNext",
"moduleResolution": "bundler",
"jsx": "preserve",
"strict": true
},
"vueCompilerOptions": {
"target": 3
}
}
npm install -D vue-tscInstall Vue ESLint plugin in your project:
npm install -D eslint-plugin-vue
Add to .eslintrc.json:
{
"extends": ["plugin:vue/vue3-recommended"]
}
MIT
Qiushi Skill: methodology skills for AI agents guided by seeking truth from facts, with Claude Code, Cursor, OpenClaw, Codex, OpenCode, and Hermes guidance.
GDScript language server for Godot Engine