
Security News
Meet Socket at Black Hat Europe and BSides London 2025
Socket is heading to London! Stop by our booth or schedule a meeting to see what we've been working on.
vscode-html-languageservice
Advanced tools
HTML language service extracted from VSCode to be reused, e.g in the Monaco editor.
The vscode-html-languageservice contains the language smarts behind the HTML editing experience of Visual Studio Code and the Monaco editor.
doComplete / doComplete2 (async) provide completion proposals for a given location.
setCompletionParticipants allows participant to provide suggestions for specific tokens.
doHover provides hover information at a given location.
format formats the code at the given range.
findDocumentLinks finds all links in the document.
findDocumentSymbols finds all the symbols in the document.
getFoldingRanges return folding ranges for the given document.
getSelectionRanges return the selection ranges for the given document. ...
For the complete API see htmlLanguageService.ts and htmlLanguageTypes.ts
The vscode-html-languageservice does not cover syntax highlighting. VS Code uses TextMate grammars for that, with a grammar that is maintained in https://github.com/textmate/html.tmbundle.
All HTML entities (elements, properties, etc) are sourced from https://github.com/microsoft/vscode-custom-data/tree/master/web-data and transpiled here. For adding or fixing existing properties' completion/hover description, please open PR there.
npm install --save vscode-html-languageservice
npm inpm test to compile and run testsHow can I run and debug the service?
htmlCompletion.ts
How can I run and debug the service inside an instance of VSCode?
vscode-html-languageservice repo to vscode/extensions/html-language-features/server to run VSCode with the latest changes from that folder:
vscode-html-languageservice, npm linkvscode/extensions/html-language-features/server, npm link vscode-html-languageservicevscode/scripts/code.sh|bat) and open a .html filevscode-html-languageservice sources, run command Debug: Attach to Node process and pick the code-oss process with the html-language-features path

htmlCompletion.ts.html file(MIT License)
Copyright 2016-2023, Microsoft
src/languageFacts/data/webCustomData.ts (shipped as lib/esm/languageFacts/data/webCustomData.ts and lib/umd/languageFacts/data/webCustomData.ts)
are built upon content from Mozilla Developer Network and distributed under CC BY-SA 2.5.
The vscode-css-languageservice package provides similar functionalities but for CSS. It offers CSS validation, completion, and hover information, making it useful for enhancing CSS editing capabilities in VS Code.
The vscode-json-languageservice package provides language services for JSON, including validation, completion, and hover information. It is similar to vscode-html-languageservice but tailored for JSON documents.
The vscode-languageserver package provides a framework for implementing language servers in VS Code. It can be used to create language services for various programming languages, offering a broader scope compared to the HTML-specific services of vscode-html-languageservice.
FAQs
Language service for HTML
The npm package vscode-html-languageservice receives a total of 777,670 weekly downloads. As such, vscode-html-languageservice popularity was classified as popular.
We found that vscode-html-languageservice demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 7 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Socket is heading to London! Stop by our booth or schedule a meeting to see what we've been working on.

Security News
OWASP’s 2025 Top 10 introduces Software Supply Chain Failures as a new category, reflecting rising concern over dependency and build system risks.

Research
/Security News
Socket researchers discovered nine malicious NuGet packages that use time-delayed payloads to crash applications and corrupt industrial control systems.