Monaco Editor: Browser-based code editor from VS Code
Web-based code editor powering VS Code with syntax highlighting and IntelliSense.
Learn more about Monaco Editor
Monaco Editor is the code editing component extracted from Visual Studio Code and adapted for web browsers. It maintains the same core editing engine as VS Code but includes web-specific shims and services to operate outside the desktop environment. The editor uses a model-based architecture where content is managed through URI-identified models, with providers supplying language-specific features like completion and hover information. It supports TypeScript development, custom language tokenization through Monarch, and integrates with existing web applications through ESM modules.
VS Code Compatibility
Generated directly from VS Code's source code, maintaining feature parity with the desktop editor's core functionality.
Model-Based Architecture
Uses URI-identified models to represent files, enabling proper language service resolution and multi-file editing scenarios.
Web Worker Integration
Offloads language services to web workers for heavy computations, maintaining UI responsiveness during code analysis.
import * as monaco from 'monaco-editor';
// Create a model
const model = monaco.editor.createModel(
'console.log("Hello Monaco!");',
'javascript',
monaco.Uri.file('/hello.js')
);
// Create an editor instance
const editor = monaco.editor.create(document.getElementById('container'), {
model: model,
theme: 'vs-dark',
automaticLayout: true
});
// Don't forget to dispose when done
// editor.dispose();
// model.dispose();See how people are using Monaco Editor
Top in Developer Tools
Related Repositories
Discover similar tools and frameworks used by developers
ZXing
Multi-format 1D/2D barcode decoder in Java.
Mamba
Fast C++ reimplementation of conda with parallel downloading and improved dependency solving performance.
Video Speed Controller
Chrome extension adding speed controls and keyboard shortcuts to HTML5 videos on any website.
Lima
Linux VM launcher with automatic file sharing, port forwarding, and container engine support.
bat
Enhanced cat replacement with syntax highlighting and Git integration for file viewing.