[Notes] migration from codimd to blocknotejs
Codimd is a solid choice for collaborative markdown edition but it does not integrate nicely into garg : peers are shown as invited and not their gargantext username, the look-and-feel breaks the gargantext one, notes are public by default so we need extra stuff like reverse proxy to mimic proper authorization mechanism. It needs a separate deployment process and is not easily extensible. I made a POC https://gitlab.iscpif.fr/gargantext/purescript-gargantext/tree/block-based-editor that shows an integration of https://www.blocknotejs.org/ with Yjs + partykit for the collaborative part. Blocknotejs is a rich-text editor featuring a UX similar to Notion. Yjs is a CRDT library in javascript handling the concurrent edition of a document. Partykit handles the collaboration part. Since we already have a server and a websocket server, we could remove the partykit deps and just use y-websocket but we would need to put more work in the server.