CKEditor Blog
ckeditor.com · Company blog · on HN since 2009
CKEditor's company blog covers its rich-text editors, real-time collaboration, bundle size, pricing, and licensing.
What HN saysHN commenters recommend CKEditor as a good WYSIWYG editor compared with TinyMCE, though some note license fees.
56HN people shared it
40linked it in comments
38stories submitted
1.1Kstory points
8 months agolast shared
2009people per year2026
Most-shared posts
- 1CKEditor just released new rich-text editors with real-time collaboration17 people · 11 points · first shared 2010 · discussion on HN
- 2Need to clean up shitty Word generated html? Just use ckeditor online8 people · 6 points · first shared 2009 · discussion on HN
- 3Lessons learned from creating a real-time collaborative rich-text editor5 people · 513 points · first shared 2018 · 88 comments on HN
- 4Letters4 people · first shared 2017
- 5How we cut CKEditor's bundle size by 40%2 people · 12 points · first shared 2025 · discussion on HN
- 6Swinging on an AST Branch2 people · 5 points · first shared 2020 · discussion on HN
- 7Lessons learned from creating a rich text editor with real time collaboration2 people · first shared 2023
- 8Ckeditor 52 people · first shared 2018
- 9Ckeditor oss license2 people · first shared 2018
- 10Pricing2 people · first shared 2020
- 11CKEditor 5: New approach to rich text editing on the web1 people · 219 points · first shared 2017 · 97 comments on HN
- 12Implementing single-file web components1 people · 113 points · first shared 2020 · 67 comments on HN
- 13CKEditor 3.0, formerly known as FCKEditor, released (WYSIWYG editor)1 people · 44 points · first shared 2009 · 29 comments on HN
- 14First stable version of CKEditor 5 is out – collaborative editing for your app1 people · 34 points · first shared 2018 · 3 comments on HN
- 15CKEditor 5 v1.0.0 beta released1 people · 15 points · first shared 2018 · 1 comments on HN
What HN people wrote when they linked it
srkiranraj · 2012-08-23
Thanks a lot for the help. That is a great resource.
Also I found http://ckeditor.com/ but this comes with a license fee.
shantanubala · 2010-12-29
You've probably already heard of these, but I really wouldn't recommend many of the smaller WYSIWYG editor projects -- they can sometimes be buggy or undeveloped.
You can re-theme TinyMCE if you want a mature, stable, and well-trusted package. The theming system isn't too difficult to learn. http://tinymce.moxiecode.com/tryit/skins.php
Also there's the old FCK Editor that got renamed.
http://ckeditor.com/
evo_9 · 2010-05-27
Edit: I have to agree with the vote for CKEdit, I hadn't looked at it in quite a while. The newest version is really excellent, ant it weighs in half the size as TinyMCE.
http://ckeditor.com/ FTW
TinyMCE: http://tinymce.moxiecode.com/
Quite a nice WYSIWYG 'web-control' editor that I've used on a number of admin sites for my clients.
They have a jquery version out now too that makes it a bit cleaner to integrate if you've already got jquery going (you can always run the regular, non-jquery version as well).
stevelosh · 2011-02-08
Here are a few quick, random things I noticed after looking through the PDF.
The emphasis on documentation is great. We need more of this.
You say that the "hint text" in the various form fields should disappear when
the field has focus. I actually find it much easier to use when the text gets
lighter but doesn't disappear until the user has started to type. I usually
navigate forms by tabbing through the fields, and I hit tab as soon as I'm done
with one field, which means that by the time my eyes get down to the next field
the hit text would be gone. The jQuery In-Field Labels plugin is a great way
to make it a little bit more usable: http://fuelyourcoding.com/scripts/infield/
I'm assuming that users create groups. When two users inevitably create
similar groups, is there any way to merge them?
Do you really need a separate "add link" button for each reagent? Why not just
show the link field and clearly mark it as optional, so someone doesn't have to
click many times if they have a bunch of reagents with links?
You mentioned videos for steps. Are you thinking people will upload them? If
so, that's tricky. What formats do you accept, do you have the space/bandwidth
to host them, etc? Or are you thinking that people will upload them to
YouTube/Vimeo/etc and paste the link? If so, are they embedded or do users
need to go to the video page to view it?
The requirements for the step editor seem awfully specific. I'd suggest taking
a look at the available editors…
whalesalad · 2025-06-23
The actual "word processor" or editor of notion is hot garbage, especially for software/keyboard people. Try out something like https://ckeditor.com/ and it is infinitely better.
cbm-vic-20 · 2022-08-24
Or, dual license with a negotiated commercial license, and a "business unfriendly" license like GPL. I've worked at a company that uses a library* that is licensed this way, and they went with the commercial license so they didn't have to conform to the rules of the GPL.
* https://ckeditor.com/
dinuovos · 2022-04-08
The definition seems a bit limiting to me.
However, I think Ckeditor is (https://ckeditor.com/). You can find it in component format for tilepieces in the project https://github.com/tilepieces/component-examples.
mrrobotchicken · 2021-10-11
In case you'd be interested, here's a blog post that summarizes all the Markdown capabilities of CKEditor 5. https://ckeditor.com/blog/CKEditor-5-the-best-open-source-Markdown-edi…
bredren · 2018-12-02
I think so. Fckeditor changed its name after some debate [1].
I remember the first time I came across it as a wysiwyg plugin for vBulletin and thought fckeditor had an edgy name. It immediately comes to mind in this context.
I felt some pause introducing fckeditor into an internal wikimedia install for a big company filled with old people I was working for at the time, just because I didn't want any waves whatsoever with those folks.
I definitely would not have gotten up in front of them at a weekly meeting and trumpted how great of a tool "gimp" was.
I sort of think people who keep names that are known to be problematic in FOSS are doing so somewhat to passive-troll and to keep normies away. Though my view of this is quite english-centric.
[1] https://ckeditor.com/old/forums/CKEditor-3.x/Should-FCKeditor-change-i…
megamindbrian2 · 2018-01-20
Github Pages would allow you to organize your blog by year/month then display it however you like: https://pages.github.com/
Uses Jekyll for template, https://jekyllrb.com/
I thought it would be cool to pop in https://ckeditor.com/ in the template and then auto-commit edits using Github's API.
Reinmar · 2017-10-19
Yes, that's true. The idea to separate the model and the view is as old as MVC itself. However, what matters here is how the model is actually implemented and what mechanisms it supports.
In CKEditor 5 we took perhaps the longest possible road so a tree structure with Operational Transformation support and couple of other goodies. It costed us a 3 years of work, but it was worth it. We proved the concept and validated the results by implementing the Letters app (https://ckeditor.com/letters/) which supports real-time colaborative editing for real (with selective undo, commenting, displaying selections of other users, etc.). We'll now be working on adding more features like e.g. tables support which rise the bar for the data model and the whole architecture even higher, but we're very optimistic seeing the results to far.
Lerc · 2013-06-24
There's a mixture.
CKeditor is http://ckeditor.com/
CodeMirror is http://codemirror.net/
Which are both JavaScript
GlGears is an emscripten port from c.
Pac Mini is written by myself in DCPU16 assembly and running on a Javascript Emulator.
I wrote Termish in JavasScript.
I made Generic Platformer for a Ludum Dare using Haxe and compiling to JavaScript.
chacham15 · 2012-12-27
It would seem like it since it has libcef which contains the definition for 'cef_browser_create'. Furthermore, it seems that they have added other Javascript libraries into it like CKEditor (http://ckeditor.com/)
asnyder · 2010-05-27
Try CKEditor, http://www.ckeditor.com.
Most frameworks even have plug-in versions of it so you don't need to do very much to communicate with it. For example, our framework NOLOH has a CKEditor Nodule (NOLOH Module).
You can see a live example of that here: http://www.noloh.com/NOLOH/Nodules/CKEditor/Example/, and the source for the example here: http://github.com/noloh/CKEditor/blob/master/Example/index.php
Disclaimer: I'm a co-founder of NOLOH
ivanjermakov · 2023-02-11
Something like CKEditor[1]?
[1]: https://ckeditor.com/
atomanek · 2019-05-07
A CKEditor 5 team member here. Thanks a lot for such an in-depth analysis, the article is a great read and we truly appreciate being a contender there.
As for the existing implementations of CKEditor 5 with real-time collaboration, I'm afraid since the collaborative editor is usually a component of a larger platform (publishing, e-learning, CMS, intranet, documentation management system etc.) it'd be difficult to find something like a publicly available real-life use case demo of it. Without much effort, you can check out the real-time collaborative editing demos (https://ckeditor.com/collaboration/real-time-collaborative-editing/dem… that we have on our website.
A while ago we started building our own internal implementation of a collaborative document management system using CKEditor 5 and features such as real-time collaboration with track changes (something like Google Docs) for our own needs - hopefully, once we polish it a bit, we will be able to release it. We are working on publishing a few case studies with existing customers, too.
As for offline collaboration, our current solution switches the editor to read-only when you e.g. lose connectivity, and then the editing mode is back on when you reconnect, along with the changes that were done in the meantime by other users when you were offline. The platform is ready to fully support "offline" writing. We tested some more complex scenarios with one of the users being offline - and it…
houshuang · 2019-05-07
I am curious about this argument - I think CKEditor 5 made a similar one in this epic blog post about how they implemented real-time collaboration (https://ckeditor.com/blog/Lessons-learned-from-creating-a-rich-text-ed… We're using Quill.js with ShareDB, which supports JSON structures (which is great, because for us we often have documents with several rich text fields, and other complex structures). So far we've been able to do anything we wanted with Quill, and I've never felt limited by the data structures we have available... (We also do all kinds of other stuff with ShareDB JSON).
I guess one reason you could need custom types would be to ensure consistency - if two keys depend on each other, and one user sets one key, and the other user sets another key, and the document is now invalid, you'd need the engine to be able to reconcile at a higher level?
fred-ck · 2017-10-20
We have in mind the "block-based editor" or "content builder" solution you're talking about. This could be relatively easily created having CKEditor as its base. This means that CKEditor may not be the ready to use way for it but it provides a good framework to develop such solution.
For example, its powerful widgets system [1], which can be used to handle "blocks", providing at the same time an excellent user experience.
At the same time, it would avoid issues that we see with the current solutions or prototypes available out there. For example, paragraphs would not be treated as separate blocks, like a video embed, but instead, they would be part of the content flow. This would allow for easy selection of multiple paragraphs. This would also avoid issues with large selection copy-and-paste.
What is needed here, is work. And this work much probably would go beyond the CKEditor scope, because it needs some level of integration with the application. It needs the development of such "blocks, and control of its behavior. All this on top of a dedicated UI solution, maybe in some senses similar to what we have with Letter [2].
There are hundreds of different use cases for editors. Our intent with CKEditor was designing a decent framework for others to build on top of it. It would be great to see the community getting together to bring such solutions to life. We're more than happy to help.
[1] https://docs.ckeditor.com/ckeditor4/docs/#!/guide/dev_widgets
[2]…
davidpolberger · 2017-10-19
We have selected CKEditor 5 for our SaaS application for the following reasons:
* We need to implement a custom user interface and CKEditor 5 makes this easy. Its modular nature enables us to build a custom "headless" bundle using Webpack. Keystroke handling is currently tied to the CKEditor 5 user interface, though, which is problematic as you don't want to reimplement what the Enter key does when editing, say, lists or block quotes. The team is actively looking into this issue, though, and it is possible to use a custom user interface while still benefiting from CKEditor's keystroke handling using a hack I documented here[1].
* The output format is (very clean) HTML. If we ever change our implementation to use another rich text editor, we don't want to write a server-side migrator moving user content from one editor format to another. Also, HTML is the output format we're looking to consume.
* Unlike most other rich text editors, CKEditor 5 will likely support pasting from Word (and possibly Excel) in the future[2]. Our end users are likely to copy content from Word and Excel (after all, we're creating "Excel for apps"). Handling this well is notoriously difficult -- here's the CKEditor 4 implementation[3]. Where TinyMCE makes this a proprietary add-on[4], CKSource will likely make this part of the open source version of CKEditor 5[5].
* When CKEditor 5 matures, CKSource will offer commercial support.
* We're interested in adding collaborative editing to our SaaS…
manigandham · 2015-10-19
Great timing, we were just looking for a new editor for our project. Since there are so many choices, here's a list of everything mentioned in this post.
Trix - https://github.com/basecamp/trix - demo here: http://trix-editor.org/ by basecamp and used in v3, handles files/images well
Squire - https://github.com/neilj/Squire - used in FastMail webmail, better for text than images
ProseMirror - http://prosemirror.net/ - not great with images
Scribe - https://github.com/guardian/scribe - by the Guardian team
CKEditor - http://ckeditor.com/ - solid and very customizable, lots of plugins, a little dated in look/feel
Quill - http://quilljs.com/
Summernote - http://summernote.org/
wysihtml - http://wysihtml.com/
Etherpad - http://etherpad.org/ - collaborative realtime editing
TinyMCE - http://www.tinymce.com/ - older editor but still good
Textbox.IO - https://textbox.io/ - new from the owners of tinymce project
Froala - https://www.froala.com/wysiwyg-editor - solid editor, newer features like drag/drop images, v2 RC3 just released
Redactor - http://imperavi.com/redactor/ - we used this in production but quality has gone down, v2 is half the functionality at 3x the price, not recommended anymore
qotd · 2010-12-29
Another vote for http://ckeditor.com/
bklyn11201 · 2024-04-19
I much prefer to CKEditor to TinyMCE, but CKEditor has done a lot around licensing:
https://ckeditor.com/legal/ckeditor-oss-license/
They also modified their last CKEditor 4 open release to check the version and prompt the user to buy the LTS support.
pwagland · 2024-02-02
https://ckeditor.com/blog/FCKeditor-2.6.11-Released/
You learn something new every day. To be fair, this rename is 10 years old!
Marta_B · 2022-11-23
Yes, CKEditor accepts Markdown input thanks to a customizable autoformatting feature: https://ckeditor.com/docs/ckeditor5/latest/features/autoformat.html
This allows users to employ all the familiar shortcodes on the go. It's basically the user's choice whether to type in Markdown or use the rich-text formatting buttons.
Additionally, it's possible to switch the default CKEditor 5 output from HTML to Markdown: https://ckeditor.com/docs/ckeditor5/latest/features/markdown.html
firexcy · 2022-11-07
There're some other editors that have similar behaviors. AFAIK, CKEditor [1], an online rich text editing framework, is optimized for cascaded formatting tags. A <pre> or <a> element will be highlighted if the cursor is "within" its context, and when your cursor is at the edge of such an element, you can press the arrow key again to move into/out from it.
[1] https://ckeditor.com/ckeditor-5/demo
girvo · 2022-10-11
https://ckeditor.com/blog/ContentEditable-The-Good-the-Bad-and-the-Ugl…
Or
https://medium.engineering/why-contenteditable-is-terrible-122d8a40e48…
Are two that I remember reading... nearly 10 years ago, holy hell can someone please make time slow down? Which discuss the common API pitfalls with `contenteditable` -- though I've no idea how painful it is in 2022. Could be a lot better now?
Igelau · 2021-03-09
Sell a license. I can't think of a better example off the top of my head, but here's a case study:
CKEditor has multiple commercial licensing plans: https://ckeditor.com/pricing/
fourstar · 2020-02-29
Nice. I honestly have been looking for something like this for awhile. All the examples I found with slate were either insufficient or outdated (i.e. canner editor) -- and in a focus on speed (being a solo founder), I couldn't compromise. I'm going to try to implement this for my editor on my site. Would be cool to be able to publish content with custom components (closest I could find for CKEditor [which I'm using] is: https://ckeditor.com/docs/ckeditor5/latest/framework/guides/tutorials/… -- but the implementation for that is rather clunky (more so on the render side -- e.g. how do I save the data in my database such that I know which components to call? CSS classes? data attributes?) So the underlying structure of having JSON for the data structure with Slate (and now this) gives me more confidence as a dev.
scofalik · 2019-03-05
Congratulations on providing a serverless solution. How do you think CRDT would fare in a tree-structured data model? We went with OT and server architecture because it seemed more reliable. You can read more about our solution here https://ckeditor.com/blog/Lessons-learned-from-creating-a-rich-text-ed…
wiktor_walc · 2018-11-16
If you are looking for a completely framework-agnostic rich text editor, then check CKEditor 5 (https://ckeditor.com/ckeditor-5/). It comes with it's own UI library which you can swap freely with any other UI thanks a to highly decoupled architecture.