Hello all,
I’d like to propose to remove the Tiptap editor from our code base.
For a few months, @ClementEXWiki has been working on an alternative editor based on Blocknote.
The Blocknote based editor is now covering the same features as Tiptap (and more). It is also integrated as a prototype as an XWiki extension.
The main point is that the Blocknote editor is currently proposing features that are not serializable (e.g., columns, colors), with no easy way to hide them.
Therefore, I’d like to propose to make Blocknote the default value for the editor configuration (i.e., when undefined, Blocknote will be used instead of Tiptap).
Time-wise, we have two options:
- work on the introduction of a mechanism to hide features that are not supported
- do the swich anyway
Note that since we don’t plan to support two editors, we’ll need to remove Tiptap.
We have have the following options for the removal of Tiptap from our codebase:
- keep the code in our code base, but not as the default
- remove it from the code base, and use the git history if we ever need to access the sources again
- move the tiptap editor extension from our code base to a separate “attic” repository
Tiptap is conflicting with Blocknote on transitive dependencies, which makes upgrading more difficult, therefore I’m -1 for option 1.
It’s also unlikely that someone will want to repackage and install the Tiptap editor on Cristal in the future, so I’m also -1 for option 3. So I’m +1 for option 2 when we agree on removing it.
Regarding the right timing, I’d like to have more opinions before deciding. I’m inclined to quickly introduce a mechanism to hide editing features that are not supported by the current configuration (e.g., syntax, or backend) as it’s going to be a need in all cases. But let me know if you think doing the switch earlier is fine.
Thanks!