quill VS CodeMirror

Compare quill vs CodeMirror and see what are their differences.

quill

Quill is a modern WYSIWYG editor built for compatibility and extensibility. (by quilljs)

CodeMirror

In-browser code editor (version 5, legacy) (by codemirror)
Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
quill CodeMirror
56 39
38,714 26,524
1.7% 0.4%
9.5 6.1
2 days ago 29 days ago
TypeScript JavaScript
BSD 3-clause "New" or "Revised" License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

quill

Posts with mentions or reviews of quill. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-12-10.
  • WYSIWYG editor for a new Rails project
    6 projects | /r/rails | 10 Dec 2023
    I started with Quill... wound up hitting lots of challenges. There are bugs/issues like, "don't add extra margin or it will be converted to extra spaces." I also struggled to embed Quill into an HTML form element, which I though would be easy.
  • Any FOSS to make HTML websites for self-hosting?
    4 projects | /r/opensource | 7 Dec 2023
    Fair enough. Look maybe into more of a utility like Quill? https://quilljs.com/
  • You don't need a CRDT to build a collaborative experience
    6 projects | news.ycombinator.com | 16 Nov 2023
    I agree. Yes, you can. Quill is the example here.

    Actually, back in 2015 when we started prototyping CKEditor 5, we started with this approach as well. Our goal from the beginning was to combine real-time editing capabilities with an engine capable of storing and rendering complex rich-text structures (nested tables, complex nested lists, other rich widgets, etc.). We quickly realized that a linear structure is going to be a huge bottleneck. In the end, if you want to represent trees, storing them as a linear structure is counterproductive.

    So, we went for a tree model. That got many things in the engine an order of magnitude harder (OT being one). But I choose to encapsulate this complexity in the model rather than make it leak to particular plugins.

    In fact, from what I remember, https://github.com/quilljs/quill/issues/117 (e.g. https://github.com/quilljs/quill/issues/117#issuecomment-644...) is a good example of issues that we avoided.

    I also talked to companies that built their platforms on top of Quill. One of them ended up gluing together countless Quill instances to power their editor and overcome the limitations of the linear data model but is now looking for a way to rebuild their editor from scratch due to the issues (performance, complexity, stability).

    So, yes. You can implement a rich-text editor based on a linear model. But it has its immediate limitations that you need to take into consideration.

  • Which Rich Text Editor to use ?
    2 projects | /r/reactjs | 6 Jul 2023
    I've always used Quill and always satisfied with it. It can be adapted to React Native as well. Despite the most popular RTE is Draft js it has some limitations on mobile.
  • Good Markdown Editor for SvelteKit?
    7 projects | /r/sveltejs | 3 Apr 2023
    Quill
  • Are WYSIWYG text entry areas difficult to implement in web and mobile apps? Because I see Markdown so much instead.
    2 projects | /r/AskProgramming | 13 Mar 2023
    All you need to do is find a free library and add it.
    2 projects | /r/AskProgramming | 13 Mar 2023
    So if one were to use https://quilljs.com/ as /u/ike_the_strangetamer suggested and just include a disclaimer that the site doesn't support pasting in some things, would that work?
  • Critical bug resulting in irretrievable (?) data loss
    4 projects | /r/Cryptee | 14 Feb 2023
    In short there are two different types of keyboards. One type, like GBoard sends entire words once you select an autocorrect recommendation from the list... it sends the whole word, all its characters, all at the same time [acts almost like pasting], whereas other keyboards send letter-by-letter. If you think about how autocorrect on phones work nowadays, if you type the word wrong, but then tap on the correct word on your keyboard, keyboards now have the ability to delete and replace entire words (and not just characters). So because of this, some android keyboards don't actually send the absolute cursor / text-selection position anymore. Instead they send it relative to the last words you've selected. You can see other note taking apps and editors plagued by keyboard issues due to this exact phenomenon on Android here as well, mainly relating to newline characters. (while the newline is added, cursor isn't updated etc) : Microsoft OneNote, Workflowy, CKEditor, Quill, RichEditor for Android, etc... Since you mentioned that your issue happened -after- you selected / copy / pasted some text, I cannot eliminate the possibility that an android os flavor (or its selection handling, since it's different for each android version and os vendor) / keyboard / browser might also be the cause. I.e. in Android Firefox, there is a bug and you cannot select words inside rich text editors by double tapping on them like you can in any other browser. This bug has been around for -6 years- now. Affecting even Github on Firefox Android. We also chimed in and tried to keep it moving, and despite our best attempts, after 2 years, Mozilla just closed the issue without even fixing the bug. You can see relevant links here. So unfortunately, browsers and keyboards on Android can cause really strange issues, and we cannot anticipate all the weird and unexpected ways they might break. 3 ) Since you also mentioned copy/pasting stuff, often people experiences issues like this when they use things like clipboard syncing tools on Android (i.e. pushbullet, or on iOS iCloud's clipboard sync etc) Because you never know what was leftover in the clipboard at the time you copy pasted, and sometimes if the sync is delayed, these things may misbehave, and paste twice, or with a delay, or paste a blank return key unexpectedly etc. 4 ) This is the silliest but still likely scenario that I still have to mention. Sometimes, depending on the OS/Browser combo, when users copy paste text from Cryptee while it's in dark mode, paste it into another part of the document, then open the document in light mode, it causes text to have white color, and makes it look invisible, causing panic.
  • Looking for the best React Editor library
    6 projects | dev.to | 28 Jan 2023
    Quill.js is a rich text editor that provides a configurable editor with various features. Compared to Slate and TipTap, Quill is a drop-in solution that doesn't require building common text editing functionality from scratch.
  • What's rich text editor we should use nowadays ?
    2 projects | /r/webdev | 25 Jan 2023
    It seems though that the last release for Quill was in 2019: https://github.com/quilljs/quill/releases

CodeMirror

Posts with mentions or reviews of CodeMirror. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-11-04.
  • I've cloned a simple VScode using Tauri and ReactJS
    3 projects | dev.to | 4 Nov 2022
    codemirror - a code editor component for the web
  • massCode v3 - An open source snippets manager is out πŸš€
    5 projects | dev.to | 5 Sep 2022
    massCode uses Codemirror as the basis for the editor and .tmLanguage as the grammar for syntax highlighting. This tandem opens the door to over 600 existing grammars. The application currently supports more than 160 grammars. In addition to .tmLanguage, the application supports .tmTheme for themes. There is also…
  • pyTermTk sandbox with Pyodide + xterm.js + CodeMirror5 + other stuff
    6 projects | /r/Python | 25 Aug 2022
    After giving up countless times since I started this project, I finally managed to dig the dark secrets of Pyodide and run pyTermTk on a browser, all of this, of course, thanks to the magic of xterm.js. I know, my friend, I know what you are thinking, I was disgusted at first picturing that hideous javascript defiling the python purity of my code, but, when I saw my red pepper shining on webkit engine, well, I couldn't hold back a tear. And after that, who am I to not include also an editor and my collection of demos and examples? So, here it is, a super minimal buggy and feature incomplete pyTermTk Sandbox
  • [Media] This is my first Rust project, a little pastebin web app called MicroBin. πŸ¦€ It's blazingly fast πŸš€πŸ”₯ and crazy safe of course
    3 projects | /r/rust | 8 May 2022
    syntax highlighting is simple with https://codemirror.net/
  • How to add SQL editor to your django admin.
    2 projects | dev.to | 1 May 2022
    Official website of Codemirror.
  • Do you trust the Obsidian company?
    8 projects | /r/ObsidianMD | 21 Apr 2022
    CodeMirror [MIT] https://codemirror.net/
  • Tilepieces
    3 projects | /r/u_tilepieces | 8 Apr 2022
    The project is built with itself, and uses some of the popular frontend libraries like codemirror and terser.To build a tilepieces application, read the instructions.
  • introducing tilepieces: An open source project to visually editing HTML documents and Web applications
    4 projects | dev.to | 6 Apr 2022
    Tilepieces is a software that allows you to create applications for editing HTML documents, using some of the popular interfaces of the browser developer tools (with which it is possible to integrate css edits). Tilepieces also allows you to reuse your favorite code and libraries, and exposes APIs that are useful for editing multiple files at a time. You can start using tilepieces with its progressive web application version! Why Tilepieces? Tilepieces has everything you need to manage and design the layout of all your web projects, be they newsletters, banners, websites or web applications. Any library and framework can be reused using its component data structure, similar to NPM's package.json. These data structures can be populated by the application itself. Its API and the possibility of customization make it perfect as the basis of a CMS How Tilepieces works The project is built with itself, and uses some of the popular frontend libraries like codemirror and terser. To build a tilepieces application, read the instructions. How to use Tilepieces You can start use tilepieces immediately with its progressive web application version. If you like Node.js, there is an npm package for you that will launch the application in your favourite browser.
  • [AskJS] Front-end codebases made using vanilla JavaScript for studying
    7 projects | /r/javascript | 28 Mar 2022
    I think that Codemirror 5 is a nice example, version 6 is somewhat hard to follow, there are way too many modules and it's hard to understand.
  • What is the point of this php.js file ?
    2 projects | /r/learnprogramming | 16 Mar 2022

What are some alternatives?

When comparing quill and CodeMirror you can also consider the following projects:

Draft.js - A React framework for building text editors.

Editor.js - A block-style editor with clean JSON output

Monaco Editor - A browser based code editor

ace - Ace (Ajax.org Cloud9 Editor)

slate - A completely customizable framework for building rich text editors. (Currently in beta.)

tiptap - The headless rich text editor framework for web artisans.

TinyMCE - The world's #1 JavaScript library for rich text editing. Available for React, Vue and Angular

ProseMirror - The ProseMirror WYSIWYM editor

trix - A rich text editor for everyday writing