CKEditor 5

Real-time collaborative future-ready rich text editor

CKEditor 5 is a set of ready-to-use rich text editors created with a powerful framework that enables you to create any kind of text editing solution and include real-time collaborative editing inside.

Reviews
Alex Eckermann
Marcin Gierbisz
Wojtek Cichon
 +6 reviews
  • Alex Eckermann
    Alex EckermannCTO, Tablo
    Pros: 

    Modern architecture. Completely modular. Easy to extend with plugins. A WYSIWYG editor built for modern browsers. Always updating, improving

    Cons: 

    The modern ECMAScript will not work legacy browsers (for now) -- tiny fraction of users or restrictive/legacy corporate environments.

    I've been looking for a modern WYSIWYG/contenteditable editor for the web for a couple of years. There are some projects that meet some good criteria (Quill, Trix). But the day I found CKEditor 5 is the day I stopped looking.

    When you look through the source code that makes up CK5 you immediately understand how powerful this editor actually is. By bolting on different plugins you can go from a basic input field to a complete rich document editor.

    Then you find out that it has a collaboration service which takes less than an hour to setup where you'll find yourself editing the same document with co-workers (whilst you're still working on it in dev) in awe of how easy and how solid it is.

    I've been a very vocal supporter of CK5 since it was in beta. From that early on I knew that this was going to be the one to stick with. The CK team has been fantastic and receptive to questions and resolving issues. They're absolutely killing it. Go check out the project and see for yourself, its all there to see on GitHub.

    Alex Eckermann has used this product for one month.
Discussion
You need to become a Contributor to join the discussion.
Piotrek Koszuliński
Piotrek KoszulińskiMaker@reinmarpl · CKEditor 5 lead developer
👋Hello Product Hunters! So happy to finally be on Product Hunt! It's been 4 years since we started rewriting CKEditor from scratch. You may know the previous versions of the product – first FCKeditor, then CKEditor 3-4. They’ve been on the market for more than a decade and while CKEditor 4 is still a robust solution, we realised that we cannot develop it iteratively forever. We needed a clean slate, so CKEditor 5 was born. You may wonder how did we manage to spend 4 years on building a rich-text editor (if you know contentEditable you know that you can create a simple rich-text editor in a matter of minutes). It turns out that the whole complexity lays in this single goal: > Create a flexible and extensible framework for implementing rich-text editing solutions with support for real-time collaboration and complex model structures. As short as it sounds, it made us implement a custom data model designed to work with Operational Transformation. It's tree-structured so we support complex features such as tables. Furthermore, we wanted developers to stop thinking about the nightmares of dealing with contentEditable, so we implemented a virtual DOM which hides contentEditable's quirks from your sight. To make the platform really flexible we made it completely plugin-based. The core is as thin as possible, so even features such as typing or support for paragraphs are plugins. Finally, the code is extremely modular and pedantically tested from day one (we always had and will have a 101% code coverage). If that wasn't enough, we redesigned all features, rethought their UX and allowed developers to create their own UIs for the editor (BTW, React and Angular integrations are going to be released very soon). As you can see I'm really proud of what we did and I could talk about that for hours :D. If you'd like to see the editor and test our take on real-time collaboration, see the links at the end of my comment. If you have any questions (e.g. why it's CKEditor 5 v11.0.0), I'll be glad to help. Links: * Overview of the framework: https://docs.ckeditor.com/ckedit... * Ready-to-use builds of CKEditor 5: https://docs.ckeditor.com/ckedit... * Real-time collaborative editing demo: https://docs.ckeditor.com/ckedit... * Star us! https://github.com/ckeditor/cked... Feel free to reach out if you have any question or feedback. I'm all ears.
Gabriel Axel
Gabriel Axel@gabiaxel · CTO, Docollab
@reinmarpl Sweetness! One thing about collaborative editing - it would be really nice to have the protocol documented and be able to use our own backend for synchronization. Your provided cloud services seem like a great starting point, and for many use cases could be enough, but I can think of cases in which apps would need their own server logic, permission system, versioning, locking etc', or prefer to reduce dependency on external services.
Piotrek Koszuliński
Piotrek KoszulińskiMaker@reinmarpl · CKEditor 5 lead developer
@gabiaxel Thanks! :) Regarding your own backend – we hear you :) We're working on allowing running CKEditor Cloud Service on your premises (e.g. behind your firewall). Documenting the protocol is a different thing, though. We've got an article in our pipeline explaining why this is not going to work. Tl;dr is that it's just extremely complex.
Szymon Boniecki
Szymon Boniecki@szymo · Co-founder, Monterail
Good stuff, was waiting for this!
Gokce Tosun
Gokce TosunMaker@gokcetosun · Growth Catter
@szymo thank you 🙏 hope you'll enjoy it 😉
Jason Caston
Jason Caston@jasoncaston · Founder of @Composioco
Been waiting on this... Can't wait to integrate it into our upcoming project
Gokce Tosun
Gokce TosunMaker@gokcetosun · Growth Catter
@jasoncaston Let us know how it turns out 🤓