JSON language support for the Monaco editor
Clone or download
Type Name Latest commit message Commit time
Failed to load latest commit information.
.vscode Adapt SnippetString, publish 1.2.1 Jan 27, 2017
scripts Bundle AMD using requirejs Mar 13, 2018
src Adopt native promises Jan 9, 2019
test Merge branch 'master' into on-demand-schema-loading Aug 12, 2018
.gitignore Always compile to esm Mar 8, 2018
.npmignore Add Copyright headers Mar 12, 2018
LICENSE.md 1.0 Jun 26, 2016
README.md update readme Apr 30, 2018
package-lock.json 2.3.0 Nov 12, 2018
package.json 2.3.0 Nov 12, 2018


Monaco JSON

JSON language plugin for the Monaco Editor. It provides the following features when editing JSON files:

  • Code completion, based on JSON schemas or by looking at similar objects in the same file
  • Hovers, based on JSON schemas
  • Validation: Syntax errors and schema validation
  • Formatting
  • Document Symbols
  • Syntax highlighting
  • Color decorators for all properties matching a schema containing format: "color-hex"' (non-standard schema extension)

Schemas can be provided by configuration. See here for the API that the JSON plugin offers to configure the JSON language support.

Internally the JSON plugin uses the vscode-json-languageservice node module, providing the implementation of the features listed above. The same module is also used in Visual Studio Code to power the JSON editing experience.


Please file issues concerning monaco-json in the monaco-editor repository.


This npm module is bundled and distributed in the monaco-editor npm module.


  • git clone https://github.com/Microsoft/monaco-json
  • cd monaco-json
  • npm install .
  • npm run prepublish
  • open $/monaco-json/test/index.html in your favorite browser.