PHPackages                             nasirkhan/laravel-jodit - 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. [Templating &amp; Views](/categories/templating)
4. /
5. nasirkhan/laravel-jodit

ActiveLibrary[Templating &amp; Views](/categories/templating)

nasirkhan/laravel-jodit
=======================

Jodit WYSIWYG editor integration for Laravel — works with Blade, Blade Components, and Livewire

v1.7.0(3w ago)11.0k↑1980%11MITPHPPHP ^8.3 || ^8.4CI passing

Since Mar 22Pushed 3w agoCompare

[ Source](https://github.com/nasirkhan/laravel-jodit)[ Packagist](https://packagist.org/packages/nasirkhan/laravel-jodit)[ Docs](https://github.com/nasirkhan/laravel-jodit)[ RSS](/packages/nasirkhan-laravel-jodit/feed)WikiDiscussions main Synced 3w ago

READMEChangelog (9)Dependencies (21)Versions (12)Used By (1)

Laravel Jodit
=============

[](#laravel-jodit)

[![Laravel Jodit - A WYSIWYG editor package that works seamlessly in plain Blade templates, Blade view components, and Livewire components](https://camo.githubusercontent.com/3eeb33869932d74c08123487dfce6b1f625c43e803999a3c6600c475ea7c7d03/68747470733a2f2f7265732e636c6f7564696e6172792e636f6d2f64736c6731666338792f696d6167652f75706c6f61642f76313737343638343431302f6c61726176656c2d6a6f6469742d656469746f722d62616e6e65725f6361776d706a2e6a7067)](https://camo.githubusercontent.com/3eeb33869932d74c08123487dfce6b1f625c43e803999a3c6600c475ea7c7d03/68747470733a2f2f7265732e636c6f7564696e6172792e636f6d2f64736c6731666338792f696d6167652f75706c6f61642f76313737343638343431302f6c61726176656c2d6a6f6469742d656469746f722d62616e6e65725f6361776d706a2e6a7067)

[![Latest Version on Packagist](https://camo.githubusercontent.com/8dae9f1e1291d3b4670e36b15d002aaa23ece6691f69368118f6753b046ee3fe/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6e617369726b68616e2f6c61726176656c2d6a6f6469742e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/nasirkhan/laravel-jodit)[![Total Downloads](https://camo.githubusercontent.com/611e8bb37154a42ce2435c42e9cc97ddc77e7f9618e49316047b66874866be11/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6e617369726b68616e2f6c61726176656c2d6a6f6469742e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/nasirkhan/laravel-jodit)[![StyleCI](https://camo.githubusercontent.com/8ba36dee9a176a41fb377b48e3f104aa5dc767c41b147723b7ec66c18c68ab58/68747470733a2f2f6769746875622e7374796c6563692e696f2f7265706f732f313138383634363336362f736869656c643f6272616e63683d6d61696e267374796c653d666c61742d737175617265)](https://github.styleci.io/repos/1188646366)[![License](https://camo.githubusercontent.com/73557580d5869125b40ad8dabc6c9b12cdc96e9ce5f70ec016a3e36cbd7198a9/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f6e617369726b68616e2f6c61726176656c2d6a6f6469742e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/nasirkhan/laravel-jodit)

A Laravel package that integrates the [Jodit](https://xdsoft.net/jodit/) WYSIWYG editor via a reusable Blade component. Works seamlessly in plain Blade templates, Blade view components, and Livewire components, with a built-in server-side file browser/uploader connector.

This package is used in [Laravel Starter](https://github.com/nasirkhan/laravel-starter) though it is framework-agnostic and can be dropped into any Laravel app.

Packagist: [nasirkhan/laravel-jodit](https://packagist.org/packages/nasirkhan/laravel-jodit)

---

Preview
-------

[](#preview)

### Jodit Editor in Laravel Starter (Tailwind theme)

[](#jodit-editor-in-laravel-starter-tailwind-theme)

[![Jodit Editor](https://private-user-images.githubusercontent.com/396987/600514174-c6af5945-cf6a-4582-8af3-66865675a285.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3ODE3NzQ3MTksIm5iZiI6MTc4MTc3NDQxOSwicGF0aCI6Ii8zOTY5ODcvNjAwNTE0MTc0LWM2YWY1OTQ1LWNmNmEtNDU4Mi04YWYzLTY2ODY1Njc1YTI4NS5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjYwNjE4JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI2MDYxOFQwOTIwMTlaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1kNTI5NjQ1NmEzYzAwYzI3ODcxN2I2ZDc1NjNjZTI5NzIyYTI0NDI2MWVlZjQyMTg5ZjA0NjY4MTRjZjVmMmI2JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZyZXNwb25zZS1jb250ZW50LXR5cGU9aW1hZ2UlMkZwbmcifQ.no-IPOyzJ_QtMIbh5rzOT4bGbgZ4CLx3W5oNPQ2nOjM)](https://private-user-images.githubusercontent.com/396987/600514174-c6af5945-cf6a-4582-8af3-66865675a285.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3ODE3NzQ3MTksIm5iZiI6MTc4MTc3NDQxOSwicGF0aCI6Ii8zOTY5ODcvNjAwNTE0MTc0LWM2YWY1OTQ1LWNmNmEtNDU4Mi04YWYzLTY2ODY1Njc1YTI4NS5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjYwNjE4JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI2MDYxOFQwOTIwMTlaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1kNTI5NjQ1NmEzYzAwYzI3ODcxN2I2ZDc1NjNjZTI5NzIyYTI0NDI2MWVlZjQyMTg5ZjA0NjY4MTRjZjVmMmI2JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZyZXNwb25zZS1jb250ZW50LXR5cGU9aW1hZ2UlMkZwbmcifQ.no-IPOyzJ_QtMIbh5rzOT4bGbgZ4CLx3W5oNPQ2nOjM)

### Jodit Editor File Upload Options

[](#jodit-editor-file-upload-options)

[![Jodit Editor](https://private-user-images.githubusercontent.com/396987/600514172-83bfdce3-12cc-4efd-a5c2-0d8d1abc5b8e.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3ODE3NzQ3MTksIm5iZiI6MTc4MTc3NDQxOSwicGF0aCI6Ii8zOTY5ODcvNjAwNTE0MTcyLTgzYmZkY2UzLTEyY2MtNGVmZC1hNWMyLTBkOGQxYWJjNWI4ZS5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjYwNjE4JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI2MDYxOFQwOTIwMTlaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1kMGZlM2Q3MWY1NWFiMzdiOWFlZTJkOWYzNDAzZWU1N2FjMDU1YmNhYWVmY2U2ZDgwMGM2ZDlmZjYxMDZhNDI3JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZyZXNwb25zZS1jb250ZW50LXR5cGU9aW1hZ2UlMkZwbmcifQ.ulvCLrG8V45GdyHa7mzBFuQ07ajy9V63SsIwaGMKrs4)](https://private-user-images.githubusercontent.com/396987/600514172-83bfdce3-12cc-4efd-a5c2-0d8d1abc5b8e.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3ODE3NzQ3MTksIm5iZiI6MTc4MTc3NDQxOSwicGF0aCI6Ii8zOTY5ODcvNjAwNTE0MTcyLTgzYmZkY2UzLTEyY2MtNGVmZC1hNWMyLTBkOGQxYWJjNWI4ZS5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjYwNjE4JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI2MDYxOFQwOTIwMTlaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1kMGZlM2Q3MWY1NWFiMzdiOWFlZTJkOWYzNDAzZWU1N2FjMDU1YmNhYWVmY2U2ZDgwMGM2ZDlmZjYxMDZhNDI3JlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZyZXNwb25zZS1jb250ZW50LXR5cGU9aW1hZ2UlMkZwbmcifQ.ulvCLrG8V45GdyHa7mzBFuQ07ajy9V63SsIwaGMKrs4)

### Jodit Editor File Browser

[](#jodit-editor-file-browser)

[![Jodit Editor](https://private-user-images.githubusercontent.com/396987/600514173-7ecb1c81-3b01-4df4-819d-14e55df54aba.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3ODE3NzQ3MTksIm5iZiI6MTc4MTc3NDQxOSwicGF0aCI6Ii8zOTY5ODcvNjAwNTE0MTczLTdlY2IxYzgxLTNiMDEtNGRmNC04MTlkLTE0ZTU1ZGY1NGFiYS5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjYwNjE4JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI2MDYxOFQwOTIwMTlaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1mZDQwNTc2OGUzNjgzYmIzYmNhNThkZGE3ODE2OGQ3N2RhYmJkODRiYTRkM2RiNTM3MzdjNWE1ZWE5YzAwY2YxJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZyZXNwb25zZS1jb250ZW50LXR5cGU9aW1hZ2UlMkZwbmcifQ.9B2IxwNpEjkFd9EH3Nz3ilHX69couVK6Afsf4I1_lxw)](https://private-user-images.githubusercontent.com/396987/600514173-7ecb1c81-3b01-4df4-819d-14e55df54aba.png?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3ODE3NzQ3MTksIm5iZiI6MTc4MTc3NDQxOSwicGF0aCI6Ii8zOTY5ODcvNjAwNTE0MTczLTdlY2IxYzgxLTNiMDEtNGRmNC04MTlkLTE0ZTU1ZGY1NGFiYS5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjYwNjE4JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI2MDYxOFQwOTIwMTlaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1mZDQwNTc2OGUzNjgzYmIzYmNhNThkZGE3ODE2OGQ3N2RhYmJkODRiYTRkM2RiNTM3MzdjNWE1ZWE5YzAwY2YxJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCZyZXNwb25zZS1jb250ZW50LXR5cGU9aW1hZ2UlMkZwbmcifQ.9B2IxwNpEjkFd9EH3Nz3ilHX69couVK6Afsf4I1_lxw)

Features
--------

[](#features)

- **One Blade component** — `` covers all use cases
- **Livewire-ready** — pass `wire-model` and the editor syncs with your Livewire component
- **File browser + uploads** — bundled connector controller; configurable storage disk and path
- **CDN assets** — loads Jodit CSS/JS from unpkg; no build step required
- **Fully configurable** — publish the config to override defaults, CDN URLs, middleware, etc.
- **Flexible toolbar buttons** — supports named profiles, custom button arrays, separators, and dropdown-friendly controls like `align`

Requirements
------------

[](#requirements)

- PHP ^8.2
- Laravel ^11.0 || ^12.0 || ^13.0
- `intervention/image-laravel ^1.5` — only required for image **resize** and **crop** features

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

[](#installation)

```
composer require nasirkhan/laravel-jodit
```

The service provider is auto-discovered. Optionally publish the config:

```
php artisan vendor:publish --tag=jodit-config
```

---

Usage
-----

[](#usage)

### 1. Ensure your layout has asset stacks

[](#1-ensure-your-layout-has-asset-stacks)

Your main layout must include the stacks that the component pushes assets into.
The default stack names are `after-styles` (CSS) and `after-scripts` (JS).
Add these to your layout if they are not already present:

```
{{-- In  --}}
@stack('after-styles')

{{-- Before  --}}
@stack('after-scripts')
```

You can change the stack names in `config/jodit.php`.

### 2. Drop the component into any form

[](#2-drop-the-component-into-any-form)

**Plain Blade**

```

```

**With required + placeholder**

```

```

**Livewire — two-way sync**

```

```

Inside a Livewire component the wrapper is automatically set to `wire:ignore` so Livewire's DOM diffing does not destroy the editor. Changes are flushed back to the Livewire component via the JavaScript API with a 300 ms debounce.

**Disable file browser**

```

```

**Custom height and connector URL**

```

```

---

Component Props
---------------

[](#component-props)

PropTypeDefaultDescription`name`string—`` / form field name (required)`id`string`jodit_{name}`Custom HTML id for the textarea`value`string`''`Initial HTML content`placeholder`string`null`Textarea placeholder`class`string`''`Extra CSS classes on the textarea`height`intconfig default (400)Editor height in pixels`file-browser`bool`true`Enable Jodit file browser / uploader`connector-url`stringauto from configOverride the connector endpoint URL`wire-model`string`null`Livewire model property to keep in sync`required`bool`false`Add `required` attribute to the textarea`buttons`array|stringconfig defaultCustom toolbar button list (see [Buttons Reference](#buttons-reference))`debounce`int`300`Livewire sync debounce in milliseconds### Passing buttons

[](#passing-buttons)

You can pass the `buttons` prop as a **PHP array** (`:buttons=`), a **JSON string**, or a **PHP-style array string**:

```
{{-- PHP array (recommended) --}}

{{-- PHP-style array string (no colon prefix needed) --}}

{{-- JSON string --}}

```

### Common toolbar examples

[](#common-toolbar-examples)

Use `align` when you want a single alignment dropdown instead of separate `left`, `center`, `right`, and `justify` buttons:

```

```

Use the package's richer preset when you want the full toolbar profile:

```

```

---

Configuration
-------------

[](#configuration)

```
// config/jodit.php (after publishing)

return [
    // Jodit CDN URLs — change the version or point to a custom build
    'cdn_css' => 'https://unpkg.com/jodit@4.1.16/es2021/jodit.min.css',
    'cdn_js'  => 'https://unpkg.com/jodit@4.1.16/es2021/jodit.min.js',

    // Asset stacks used by the Blade component
    'assets' => [
        'styles_stack'  => 'after-styles',
        'scripts_stack' => 'after-scripts',
    ],

    // Connector route settings
    'route' => [
        'enabled'    => true,
        'prefix'     => 'jodit',
        'name'       => 'jodit.connector',
        'middleware' => ['web', 'auth'],
    ],

    // Storage
    'disk'      => 'public',
    'base_path' => 'jodit',

    // Upload constraints
    'max_file_size'  => 10240,   // kilobytes
    'allowed_mimes'  => 'jpeg,jpg,png,gif,webp,svg,pdf,doc,docx,xls,xlsx,zip,txt',

    // Default editor options (passed directly to Jodit)
    'defaults' => [
        'height'               => 400,
        'toolbarSticky'        => true,
        'toolbarButtonSize'    => 'large',
        'showCharsCounter'     => false,
        'showWordsCounter'     => false,
        'showXPathInStatusbar' => false,
        'defaultActionOnPaste' => 'insert_clear_html',
    ],

    // Default toolbar buttons
    'buttons' => [
        'bold', 'italic', 'underline', 'strikethrough', '|',
        'left', 'center', 'right', '|',
        'ul', 'ol', '|',
        'font', 'fontsize', 'paragraph', 'brush', '|',
        'link', 'image', 'video', 'file', '|',
        'undo', 'redo',
    ],
];
```

### Registering the connector under a custom route

[](#registering-the-connector-under-a-custom-route)

If you want the connector to live under your admin prefix with your own middleware, disable the package route and register it yourself:

```
// config/jodit.php
'route' => [
    'enabled' => false,
],
```

```
// routes/web.php
use Nasirkhan\LaravelJodit\Http\Controllers\JoditConnectorController;

Route::middleware(['web', 'auth', 'role:admin'])
    ->prefix('admin')
    ->group(function () {
        Route::any('jodit-connector', [JoditConnectorController::class, 'handle'])
            ->name('backend.jodit.connector');
    });
```

Then tell the component which route to use:

```

```

Or set a global default in `config/jodit.php`:

```
'route' => [
    'enabled' => false,
    'name'    => 'backend.jodit.connector',  // used by component when no connector-url prop
],
```

---

Buttons Reference
-----------------

[](#buttons-reference)

Use any of the names below in your `buttons` array. Use `|` as a visual separator between groups.

### Text Formatting

[](#text-formatting)

NameDescription`bold`Bold`italic`Italic`underline`Underline`strikethrough`Strikethrough`superscript`Superscript`subscript`Subscript`eraser`Clear formatting### Alignment

[](#alignment)

NameDescription`align`Alignment dropdown (`left`, `center`, `right`, `justify`)`left`Align left`center`Align centre`right`Align right`justify`Justify### Lists &amp; Indentation

[](#lists--indentation)

NameDescription`ul`Unordered list`ol`Ordered list`indent`Increase indent`outdent`Decrease indent### Block / Typography

[](#block--typography)

NameDescription`paragraph`Paragraph / Headings (H1–H6)`font`Font family`fontsize`Font size`brush`Text colour &amp; background colour`classSpan`Apply CSS class to selection### Insert

[](#insert)

NameDescription`link`Insert / edit hyperlink`image`Insert image`video`Insert video (embed)`file`Insert file link`table`Insert table`hr`Horizontal rule`symbols`Special characters### Clipboard &amp; History

[](#clipboard--history)

NameDescription`undo`Undo`redo`Redo`cut`Cut`copy`Copy`paste`Paste`selectall`Select all### View / Utility

[](#view--utility)

NameDescription`source`Toggle HTML source view`fullsize`Toggle fullscreen`preview`Live preview`print`Print`find`Find &amp; replace`spellcheck`Spell check`speech`Speech recognition### Separators

[](#separators)

NameDescription`|`Vertical separator bar`\n`Line break (start a new toolbar row)**Example — compact toolbar:**

```
'buttons' => [
    'bold', 'italic', 'underline', 'strikethrough', 'eraser', '|',
    'ul', 'ol', '|',
    'paragraph', 'brush', '|',
    'link', 'image', '|',
    'undo', 'redo',
],
```

**Example — full editing toolbar:**

```
'buttons' => [
    'source', '|',
    'bold', 'italic', 'underline', 'strikethrough', 'superscript', 'subscript', 'eraser', '|',
    'paragraph', 'font', 'fontsize', 'brush', 'classSpan', '|',
    'align', '|',
    'ul', 'ol', 'indent', 'outdent', '|',
    'cut', 'copy', 'paste', 'selectall', '|',
    'link', 'image', 'video', 'file', 'table', 'hr', 'symbols', '|',
    'undo', 'redo', '|',
    'find', 'spellcheck', 'speech', 'preview', 'print', 'fullsize',
],
```

---

File Manager Backends
---------------------

[](#file-manager-backends)

The `file_manager.backend` config key controls which file manager is wired up when `file-browser="true"` (the default).

### `builtin` (default)

[](#builtin-default)

Uses the package's own connector controller. No extra packages required.

```
// config/jodit.php
'file_manager' => [
    'backend' => 'builtin',
],
```

### `custom`

[](#custom)

Point the editor at any server-side connector that speaks Jodit's filebrowser protocol. Pass the URL via the component's `connector-url` prop, or set `route.name` in the config:

```

```

---

License
-------

[](#license)

MIT

###  Health Score

50

—

FairBetter than 95% of packages

Maintenance94

Actively maintained with recent releases

Popularity23

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 94.4% 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 ~8 days

Recently: every ~17 days

Total

9

Last Release

26d ago

Major Versions

v0.5.0 → v1.0.02026-03-22

PHP version history (3 changes)v0.5.0PHP ^8.2

v1.2.0PHP ^8.3

v1.7.0PHP ^8.3 || ^8.4

### Community

Maintainers

![](https://www.gravatar.com/avatar/27802773a2668018fdca8b76c35d03ce16cfc92c0f9c6703fb532e77780eadc0?d=identicon)[nasirkhan](/maintainers/nasirkhan)

---

Top Contributors

[![nasirkhan](https://avatars.githubusercontent.com/u/396987?v=4)](https://github.com/nasirkhan "nasirkhan (34 commits)")[![StyleCIBot](https://avatars.githubusercontent.com/u/11048387?v=4)](https://github.com/StyleCIBot "StyleCIBot (2 commits)")

---

Tags

blade-componentfile-managerjoditjodit-laraveljodit-livewirelaravel-componentslaravel-editorlaravel-file-managerlivewire-componentrich-text-editorwysiwygwysiwyg-editorlaravelbladelivewireeditorwysiwygrich textjodit

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/nasirkhan-laravel-jodit/health.svg)

```
[![Health](https://phpackages.com/badges/nasirkhan-laravel-jodit/health.svg)](https://phpackages.com/packages/nasirkhan-laravel-jodit)
```

###  Alternatives

[psalm/plugin-laravel

Psalm plugin for Laravel

3345.1M337](/packages/psalm-plugin-laravel)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9742.3M121](/packages/roots-acorn)[moonshine/moonshine

Laravel administration panel

1.3k239.9k76](/packages/moonshine-moonshine)[pressbooks/pressbooks

Pressbooks is an open source book publishing tool built on a WordPress multisite platform. Pressbooks outputs books in multiple formats, including PDF, EPUB, web, and a variety of XML flavours, using a theming/templating system, driven by CSS.

45344.0k1](/packages/pressbooks-pressbooks)[tightenco/jigsaw

Simple static sites with Laravel's Blade.

2.3k449.3k30](/packages/tightenco-jigsaw)[hasinhayder/tyro-dashboard

Tyro Dashboard - Beautiful admin dashboard for managing Tyro roles, privileges, users, and settings

5452.7k](/packages/hasinhayder-tyro-dashboard)

PHPackages © 2026

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