category: builds-support
CKEditor 5 is currently supported in the following desktop browsers:
Not supported yet:
Features known to not be fully supported yet:
Although CKEditor 5 works in Safari for iOS and Chrome for Android, it has not been fully tested yet and there are known bugs and inconveniences. Full support for mobile browsers will be our goal after releasing 1.0.0.
When working on mobile support we need to consider two complex aspects:
Special UI, designed for mobile.
During the design phase we understood that creating a responsive and touch-friendly UI will not guarantee a desired UX level by itself. Also, that the "mobile first" approach has no application in this case due to constraints of the mobile environment and the specific editing method. Therefore, we plan to introduce a completely customized, mobile-oriented UI.
We began research on how to display necessary UI controls on the screen and, sadly, it turned out that mobile Safari's viewport mechanics makes it extremely complicated to display the UI in a reliable way. You can read more in the UX: Mobile editing ticket.
Handling mobile browsers' quirks.
Mobile browsers (especially mobile Safari) work differently than their desktop equivalents. Chrome's incomplete keydown event is just one of the issues that we need to deal with.
For several years we have worked with W3C on fixing contentEditable — a technology on which the entire browser-based editing is based. Recently, browser vendors started implementing the core part of the new specifications — the beforeinput event which has a chance to improve the situation. CKEditor 5's architecture was designed with this event in mind, so we will start taking advantage of it as soon as it proves to be stable enough.
To ensure the highest quality, we maintain a complete test suite with a stable 100% of code coverage for each of the packages. As of April 2018, this means over 8200 tests and the number is growing.
Such an extensive test suite requires a proper continuous integration service. We use Travis CI as a build platform and BrowserStack to be able to run tests on all browsers. These services ensure seamless and fast developer experience and allow us to focus on the job.