# CodeMirror Kakoune [![npm version](https://img.shields.io/npm/v/codemirror-kakoune)](https://www.npmjs.com/package/codemirror-kakoune) [![JSR](https://jsr.io/badges/@ykmade/codemirror-kakoune)](https://jsr.io/@ykmade/codemirror-kakoune) A modular suite bringing Kakoune's selection-first modal editing paradigm to CodeMirror 6, CodeMirror 5, Obsidian, and web browsers. --- ## Ecosystem & Packages | Package / App | Version / Target | Description | Links | | :--- | :--- | :--- | :--- | | **[`kakoune-core-js`](./packages/kakoune-core)** | [![npm](https://img.shields.io/npm/v/kakoune-core-js)](https://www.npmjs.com/package/kakoune-core-js) | Framework-agnostic Kakoune engine (`EditorHost`, `KakouneKeyProcessor`, `parseKakrc`, portable commands) | [npm](https://www.npmjs.com/package/kakoune-core-js) · [JSR](https://jsr.io/@ykmade/kakoune-core-js) | | **[`codemirror-kakoune`](./packages/codemirror-kakoune)** | [![npm](https://img.shields.io/npm/v/codemirror-kakoune)](https://www.npmjs.com/package/codemirror-kakoune) | CodeMirror 6 extension with modal editing, prompt controllers, and multiple selection rendering | [npm](https://www.npmjs.com/package/codemirror-kakoune) · [JSR](https://jsr.io/@ykmade/codemirror-kakoune) | | **[`codemirror-kakoune-cm5`](./packages/codemirror-kakoune-cm5)** | [![npm](https://img.shields.io/npm/v/codemirror-kakoune-cm5)](https://www.npmjs.com/package/codemirror-kakoune-cm5) | CodeMirror 5 adapter adhering to CM5's native `keyMap` architecture | [npm](https://www.npmjs.com/package/codemirror-kakoune-cm5) · [JSR](https://jsr.io/@ykmade/codemirror-kakoune-cm5) | | **[`obsidian-kakoune`](./packages/obsidian-kakoune)** | Obsidian Plugin | Desktop Obsidian plugin providing native modal editing for markdown notes | [README](./packages/obsidian-kakoune) | | **[`browser-kakoune`](./apps/browser-extension)** | Browser Extension (MV3) | WebExtension (Chrome, Firefox, Edge, Brave) bringing Kakoune modal editing to `