It's very, very far from a CRUD app or "just updating a DB". GUI-heavy apps are notoriously hard to get right. Any kind of "editable canvas" makes it 10x harder. Online collaboration is hard, so that's another 10x—there are known solutions, but it's an entire sidequest you have to pour a massive amount of effort into.
Custom text editing and rendering is really hard to do well.
Making everything smooth and performant to the point it's best-in-class while still adding new features is... remarkable.
(Speaking as someone who's writing a spreadsheet and slideshow editor myself...among other things)
I'm trying to imagine a scenario with a non-trivial app that is missing a create, read, update or delete operation. I'm coming up with so few examples that I have to imagine the colloquial use of CRUD app means just CRUD operations.
Custom text editing and rendering is really hard to do well.
Making everything smooth and performant to the point it's best-in-class while still adding new features is... remarkable.
(Speaking as someone who's writing a spreadsheet and slideshow editor myself...among other things)