Naughty Programmer's Madness

    TypeScript icon, indicating that this package has built-in type declarations

    5.0.0 • Public • Published


    JSON language service extracted from VSCode to be reused, e.g in the Monaco editor.

    npm Package NPM Downloads Build Status License: MIT


    The vscode-json-languageservice contains the language smarts behind the JSON editing experience of Visual Studio Code and the Monaco editor.

    • doValidation analyses an input string and returns syntax and lint errors.
    • doComplete provides completion proposals for a given location.
    • doResolve resolves a completion proposals.
    • doHover provides a hover text for a given location.
    • findDocumentSymbols provides all symbols in the given document.
    • findDocumentColors provides all color symbols in the given document.
    • getColorPresentations returns available color formats for a color symbol.
    • format formats the code at the given range.
    • getFoldingRanges gets folding ranges for the given document.
    • getSelectionRanges gets selection ranges for a given location.
    • getMatchingSchemas matches a document against its schema and returns all AST nodes along with the matching sub schemas.
    • parseJSONDocument creates a JSON document from source code.
    • newJSONDocument creates a JSON document from an AST.

    For the complete API see jsonLanguageService.ts and jsonLanguageTypes.ts


    npm install --save vscode-json-languageservice

    Sample usage

    See sample.ts for an example on how to use the JSON language service.

    To run the sample use yarn sample


    git clone
    cd vscode-json-languageservice

    Use yarn test to compile and run tests

    How can I run and debug the service?

    • open the folder in VSCode.
    • set breakpoints, e.g. in jsonCompletion.ts
    • run the Unit tests from the run viewlet and wait until a breakpoint is hit: image

    How can I run and debug the service inside an instance of VSCode?

    • run VSCode out of sources setup as described here:
    • use yarn link vscode-json-languageservice in vscode/extensions/json-language-features/server to run VSCode with the latest changes from vscode-json-languageservice
    • run VSCode out of source (vscode/scripts/|bat) and open a .json file
    • in VSCode window that is open on the vscode-json-languageservice sources, run command Debug: Attach to Node process and pick the code-oss process with the json-language-features path image
    • set breakpoints, e.g. in jsonCompletion.ts
    • in the instance run from sources, invoke code completion in the .json file




    npm i vscode-json-languageservice

    DownloadsWeekly Downloads






    Unpacked Size

    507 kB

    Total Files


    Last publish


    • egamma
    • alexandrudima
    • aeschli
    • dbaeumer