Problem:
I was building an chat app with
@qavernX and for the most part it works.
All the over-engineering delights like local-sync, virtualization, actual markdown support, inline image support, etc...
qave.chat
Under the hood, we were using PlateUI which under it's hood uses prose-mirror. The issue with that is React will fight prose-mirror on rendering and became really hard to wire in complex logic and feel confident things are working.
github.com/nytimes/react-pro…
I had a few choices
1. Continue building on top of React Prosemirror and force it to work
2. Wait for NYT to release their solution and use it
3. Build my own one
Me and
@qavernX also recently attended a hackathon and felt the power of expressing intent and things just working when we used Effect v4 effect-atom.
I then stumbled on
foldkit.dev and had the idea of owning the whole flow from service/repo to the rendering engine with foldkit.
Currently, building this rich text editor from scratch has been me applying Gall's principle and it's been fun! Things are working, tests are catching stuff, extending it gives me confidence.
Once the rich text editor is in a good state, I'll tackle the local-sync and see if this is doable as well.