Print Print
Reading time 3:25

Developer(s)Marijn Haverbeke
Stable release
5.59.2 / January 20, 2021; 4 months ago (2021-01-20)[1]
Repository Edit this at Wikidata
Written inJavaScript
TypeSource code editor

CodeMirror is a JavaScript component that provides a code editor in the browser. It has a rich programming API and a focus on extensibility.


The first version of the editor was written early 2007, for the console in the Eloquent JavaScript website. The code was first packaged up and released under the name CodeMirror in May 2007. This version was based on the contentEditable feature of browsers.[2]

In late 2010, the Ace project, another JavaScript-based code editor, pioneered new implementation techniques and demonstrated that it is possible, even in JavaScript, to handle documents with many thousands of lines without degraded performance. This prompted a rewrite of CodeMirror [3] along the same principles. The result was version 2, which no longer relied on contentEditable and significantly improved performance.


  • Multicursors
  • Syntax highlighting
  • Syntax verification
  • Brace matching
  • Auto indentation and outdent
  • Autocompletion
  • Code/text folding
  • Search and Replace
  • Handles huge documents (hundreds of thousands of lines) without trouble.
  • Customizable key bindings including Vi and Emacs modes.
  • A wide range of language modes.[4]
  • Add-ons for autocompletion, code folding, integrated linting.
  • A broad programming API.
  • Support for some mobile operating systems

Projects using CodeMirror

See also

  • Comparison of JavaScript-based source code editors


  1. ^ "CodeMirror: Release History".
  2. ^ "Implementing a Syntax-Highlighting JavaScript Editor—in JavaScript". 2007-05-24.
  3. ^ "CodeMirror 2 has entered beta". 2011-02-08.
  4. ^ "CodeMirror list of language modes".

External links

Edited: 2021-06-18 12:36:41