Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Livewire Editorjs

Livewire Editorjs Laravel Package

maxeckel/livewire-editorjs

A Laravel Livewire component that brings the block-style Editor.js editor to your app. Render and edit JSON block content, save HTML, upload images via Laravel storage, and extend it with custom tools. Clean integration with validation and simple Blade usage.

View on GitHub
Deep Wiki
Context7

Livewire Editor.js integrates the block-style Editor.js editor into your Livewire components. It ships a ready-to-use component with two-way data binding, storing content as structured JSON that's easy to persist and render.

  • Block-based editing with headers, lists, quotes, and more
  • Built-in image uploads with configurable storage
  • Register custom block tools and translations
  • Server-side validation of editor content
  • Reactive Livewire events for live updates
Frequently asked questions about Livewire Editorjs
How do I install maxeckel/livewire-editorjs in a Laravel app?
Install it with Composer using composer require maxeckel/livewire-editorjs, then publish the package assets and Blade view with artisan vendor:publish. Drop the Livewire component into a form and bind it to a JSON or text column; the package does not include migrations beyond the column you add. Check the Composer constraints against your PHP and Laravel versions first, because it targets the Laravel 8/9 and Livewire 2 era.
Does this package work with Livewire 3 and Laravel 11?
No, not out of the box. The repository is archived and its last release was April 2023, so it predates Livewire 3 and will likely fail on Composer constraints or Livewire lifecycle changes. If Livewire 3 is on your roadmap, treat the package as a fork obligation rather than a drop-in dependency.
How does livewire-editorjs store content and can it render HTML?
It stores Editor.js output as block JSON in a JSON or text database column. The package does not include a renderer, so converting those blocks to HTML, Markdown, or an API response is your responsibility. Plan for a sanitizer at render time.
Is maxeckel/livewire-editorjs still maintained?
No. The GitHub repository is archived, the last release is from April 2023, and it has zero dependents, so there is no active community or downstream bug reporting. For production use, fork it into an internal package you control and pin the Editor.js version.
How do I handle image uploads with Editor.js in Livewire?
The package does not include a media pipeline or upload handler. You must configure Editor.js image or attachment tools to post files to your own Laravel endpoint, then validate size, dimensions, and storage location. Reuse your existing storage abstraction and define cleanup rules for orphaned files.
Is it safe to render stored Editor.js JSON without sanitizing?
No. Rendering block JSON to HTML without a sanitizer is a live XSS vector, especially if any block content or URLs are user-controlled. Map known block types to safe Blade partials and run the output through HTMLPurifier or an equivalent allowlist sanitizer.
How do I validate Editor.js block JSON before saving?
Whitelist the block types and required fields your app actually supports, then validate the JSON structure with Laravel validation rules or a dedicated schema validator. Log unknown block types on save so schema drift from Editor.js plugins surfaces early. Store a schema version field alongside the document for future migrations.
Can I customize the Editor.js tools and block types?
Yes, customization happens in the published JavaScript and asset configuration, where you register Editor.js tools such as headers, lists, images, quotes, and embeds. Keep tool versions pinned and bundle assets instead of relying on a CDN, because the Editor.js plugin ecosystem is fragmented and version-sensitive. Custom blocks require JavaScript work that the package does not provide.
What are the best alternatives to maxeckel/livewire-editorjs?
Consider Tiptap, Filament RichEditor, or a maintained block editor that has current Livewire and Laravel support. Weigh the 24-month cost of forking and maintaining this archived package against the cost of adopting a supported alternative. If block-based JSON is a real product requirement, a maintained editor may still be cheaper than owning the glue.
How do I fork and harden this package for production?
Create an internal package such as acme/editorjs-laravel and replace the Composer dependency with your fork. Add Livewire 3 compatibility patches if needed, pin and commit the Editor.js assets, add schema validation, media upload handling, and a sanitized renderer. Document known limitations and give a named owner a runbook for upgrades.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
robertmarney/lara-hierarchial-collections
simonschaufi/rule-doc-generator
emissaoja/emissaoja
blackbricksoftware/gravityforms-civicrm-form-processor
al-rahabi/fancy-crud
jinas/dhivatar-component
mltstephane/laravel-quality
bernskiold/laravel-talentlms
bernskioldmedia/laravel-form-architect
youbar/easy-crud
c-point-labs/laravel-hostyourai
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo