This is great. I've started building a little notes app in Vue and I was wondering how to handle WYSIWYG Markdown editing so I'll definitely be digging in to your code for inspiration. Do you mind giving us a quick overview of how it works technically?
It would be nice if you could change the block type after creating it. For example I don't think there's a way to change an h1 to an h2, or a bulleted list to a numbered list.
The collaborative editing is neat too, are you using a library for that or is it bespoke as well?