Stop supporting Tiptap

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:

  1. keep the code in our code base, but not as the default
  2. remove it from the code base, and use the git history if we ever need to access the sources again
  3. 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!

2 Likes

Thanks for the proposal.

I’m personally for option 2, I don’t see anyone using Tiptap instead of BlockNote, which has all the features the former supports and more.

In the unlikely scenario where someone would want to use Tiptap for whatever reason, they can indeed pull the code from the Git history and use it that way, which doesn’t seem to be an issue for me.

1 Like

+1 for option 2.

I found some issues that issues that we might want to consider before deciding to make Blocknote the default:

1 Like