Post

I was getting really annoyed with TipTap + Prosemirror, so I decided to give Slate a try. ...Man, where has this library been my whole life 🥹 This bulleted list demo took me weeks to get half-working in TipTap. In slate, it took a couple hours (with Codex's help).

1 repost30 likes

It’s all fun and games for the simple stuff but wait until you get to adding more complex interactions. Slate has a low floor and low ceiling. And ProseMirror has a high floor and high ceiling

I can +1 this. We were using Slate in production a few years ago and it was a never ending cause of headaches, we invested time to switch to TipTap and all of them went away.

I’ve been trying to move to tiptap from draft-js for years, but the project keeps getting sidelined. I did a ton of research and picked tiptap over slate and lexical. Sounds like you’re happy with tiptap?

I'm a big fan of Slate! We're using for our editor with some special tags (like spoiler). I love that we can parse it directly into HTML for for SSR, then hydrate specific tags with functionality (like spoilers click to reveal).

To be honest, lexical has been incredibly frustrating for me, both from a setup standpoint and a docs standpoint. Am I missing something? Bc it feels somehow more complicated than Prosemirror

The docs are definitely lacking (but improving!) and it certainly isn't the simplest option. It's more like a set of tools for building your own text editor from the ground up, rather than a library accommodating lots of common use cases.

In my case I needed some really wild stuff (e.g. drag and drop paragraphs between drop zones in the editor), so being able to create completely custom nodes that behave how I want has been a really powerful thing and very scalable.

I struggled A LOT to implement a bullet system from scratch with vanilla ProseMirror a couple of years ago. It's been almost a decade since I last used Slate. It was way easier than PM but the future of the project seemed dubious. I see it's still in beta 😬