PHPackages                             skeeks/yii2-widget-codemirror - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. skeeks/yii2-widget-codemirror

ActiveYii2-extension[Utility &amp; Helpers](/categories/utility)

skeeks/yii2-widget-codemirror
=============================

Yii2 codemirror widget

1.0.5(5y ago)021.0k2BSD 3-ClausePHP

Since Jun 5Pushed 5y ago1 watchersCompare

[ Source](https://github.com/skeeks-semenov/yii2-widget-codemirror)[ Packagist](https://packagist.org/packages/skeeks/yii2-widget-codemirror)[ Docs](http://git.skeeks.com/skeeks/yii2-widget-codemirror)[ RSS](/packages/skeeks-yii2-widget-codemirror/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (4)Dependencies (2)Versions (7)Used By (2)

Codemirror widget for Yii2 framework
====================================

[](#codemirror-widget-for-yii2-framework)

Description
-----------

[](#description)

CodeMirror is a versatile text editor implemented in JavaScript for the browser. It is specialized for editing code, and comes with a number of language modes and addons that implement more advanced editing functionality. For more information please visit [CodeMirror](http://codemirror.net/)

Installation
------------

[](#installation)

The preferred way to install this extension is through [composer](http://getcomposer.org/download/).

To install, either run

```
$ php composer.phar require skeeks/yii2-widget-codemirror "*"

```

or add

```
"skeeks/yii2-widget-codemirror": "*"

```

to the `require` section of your `composer.json` file.

Usage
-----

[](#usage)

```
use skeeks\widget\codemirror\CodemirrorWidget;

$form->field($model, 'code')->widget(
    CodemirrorWidget::className(),
    [
        'preset'=>'php',
        'options'=>['rows' => 20],
    ]
);
```

You can use ready-made presets, or create your own. To do this, specify the folder to your presets.

```
use skeeks\widget\codemirror\CodemirrorWidget;

$form->field($model, 'code')->widget(
    CodemirrorWidget::className(),
    [
        'presetDir'=>'/path_to_your_presets',
        'preset'=>'sql',
    ]
);
```

In general, you can customize the widget directly specifying its properties.

```
use skeeks\widget\codemirror\CodemirrorWidget;
use skeeks\widget\codemirror\CodemirrorAsset;

$form->field($model, 'code')->widget(
    CodemirrorWidget::className(),
    [
        'assets'=>[
            CodemirrorAsset::MODE_CLIKE,
            CodemirrorAsset::KEYMAP_EMACS,
            CodemirrorAsset::ADDON_EDIT_MATCHBRACKETS,
            CodemirrorAsset::ADDON_COMMENT,
            CodemirrorAsset::ADDON_DIALOG,
            CodemirrorAsset::ADDON_SEARCHCURSOR,
            CodemirrorAsset::ADDON_SEARCH,
        ],
        'settings'=>[
            'lineNumbers' => true,
            'mode' => 'text/x-csrc',
            'keyMap' => 'emacs'
        ],
    ]
);
```

License
-------

[](#license)

**conquer/codemirror** is released under the MIT License. See the bundled `LICENSE.md` for details.

###  Health Score

34

—

LowBetter than 77% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity21

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity67

Established project with proven stability

 Bus Factor1

Top contributor holds 87.5% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~363 days

Recently: every ~453 days

Total

6

Last Release

2187d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/785306737dd13e3ea6826dfc04ab29ececa88f560d054ff595d64853cb878219?d=identicon)[skeeks-semenov](/maintainers/skeeks-semenov)

---

Top Contributors

[![borodulin](https://avatars.githubusercontent.com/u/8121448?v=4)](https://github.com/borodulin "borodulin (42 commits)")[![skeeks-semenov](https://avatars.githubusercontent.com/u/9209305?v=4)](https://github.com/skeeks-semenov "skeeks-semenov (5 commits)")[![chuprik](https://avatars.githubusercontent.com/u/802946?v=4)](https://github.com/chuprik "chuprik (1 commits)")

---

Tags

yii2extensionwidgetcodemirror

### Embed Badge

![Health badge](/badges/skeeks-yii2-widget-codemirror/health.svg)

```
[![Health](https://phpackages.com/badges/skeeks-yii2-widget-codemirror/health.svg)](https://phpackages.com/packages/skeeks-yii2-widget-codemirror)
```

###  Alternatives

[conquer/codemirror

Yii2 codemirror widget

36281.5k3](/packages/conquer-codemirror)[richardfan1126/yii2-js-register

Yii2 widget to register JS into view

1357.2k7](/packages/richardfan1126-yii2-js-register)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
