Collaboration overview
The CKEditor 5 architecture was designed and written to bring collaborative editing features where multiple authors can easily work on the same rich text documents.
# Demo
Use the set of collaboration features in the demo below: turn on tracking changes
, add comments , check comments archive and follow the revision history of the document.This demo only presents a limited set of features. Visit the feature-rich editor example to see more in action.
# Available collaboration features
The collaboration capabilities are provided by three easy-to-integrate plugins delivering different features – comments, track changes and revision history. You will find more information about each feature in the dedicated guides. You may also look for additional interesting details and examples in the Collaborative writing in CKEditor 5 blog post after reading these guides.
These features can be used stand-alone or together, depending on the users’ needs. The collaboration can also be either in real-time or asynchronous.
# Comments
The comments feature lets the users add sidenotes to marked fragments of the document, including text and block elements such as images. It also allows the users to discuss in threads and remove comments when they finish the discussion.
You can define where you want to store the comments data. In order to load and save it, you will also need to provide a proper integration with your database. If you want to automatically synchronize the comments discussion between users, you can also use comments as a part of the real-time collaboration.
Comment threads can be displayed in a sidebar or inline:
Moreover, comment threads can be resolved, which moves them to the archive. Note that the comments archive is enabled by default and cannot be turned off.
Refer to the comments guide for more information.
# Track changes
The track changes feature brings automatic suggestion marking for the document as you change it. When editing the document, the user is able to switch to the track changes mode. All their changes will then create suggestions that can be accepted or discarded.
You can define where you want to store the suggestions data. In order to load and save it, you will also need to provide a proper integration with your database. If you want to automatically synchronize the suggestions between users, you can also use track changes as a part of the real-time collaboration.
Suggestion annotations can be displayed in a sidebar or inline:
Refer to the track changes guide for more information.
# Revision history
The revision history feature is a document versioning tool. It allows CKEditor 5 users to create and view the chronological revision history of their content. These versions are listed in the side panel. The preview mode allows for easy viewing of content development between revisions. You can rename, compare and restore older revisions on the go.
Refer to the revision history guide for more information.
# Real-time vs asynchronous collaboration
There are two available collaboration modes in CKEditor 5: real-time collaboration (often referred to as RTC) and non-RTC collaboration. Both collaborative workflows allow your users to work together within a single application, without the need for third-party tools. They can either collaborate on documents asynchronously or use a real-time editor to write, review and comment on content in a live mode. All available collaboration plugins can be used in both modes.
# Non real-time collaboration
The non-real-time collaboration is perfect for linear workflow, where the content creation, revision, and edition are done sequentially and there is no need for users to work simultaneously. It is perfect for professional environments working on business deals, legal documents, academic research papers, contract management, and many more use cases.
Non-RTC approach can also be beneficial in terms of cost efficiency and it requires less dedicated infrastructure. Also, non-RTC approach gives you more control over your data. Because you are fully responsible for loading, saving, and storing all of the data, it is on-premise by default.
# Real-time collaboration
Real-time collaboration, on the other hand, lets multiple users simultaneously work on the same document — even on the same part of it, with no content locking. Comments and track changes will be synchronized automatically between users, on the go. It automatically solves all conflicts if users make changes at the same time. All users currently involved in the editing process are listed.
Thanks to this, collaborating users will not only be able to edit a rich text document at the same time but also discuss the process in comments. This is perfect for fast-paced content-creation situations like news agencies, social media management entities, research sessions, and many more. And it can still be used in a single-user mode, just like the non-RTC solution.
Real-time collaboration comes with a ready-to-use backend which can be used as a SaaS solution with CKEditor Cloud Services or installed on your machines (on-premises).
Refer to the real-time collaboration guide for more information.
Every day, we work hard to keep our documentation complete. Have you spotted outdated information? Is something missing? Please report it via our issue tracker.