Scroll
Scroll is an infinite-scrolling note-taking app which supports collaborative editing 🪄📜!
Website: https://scroll.boats
GitHub: https://github.com/rjdellecese/scroll
4 Replies
Thanks so much for sharing this @RJ! People often ask if you can use Convex to build collaborative editing and it's great to have a community example to point to.
Scroll had fallen out-of-date with the latest supported version of Convex, but has since been updated and is live again!
But I'm really excited for Convex components to be released, so I can build this as a component for folks!
That would be awesome @RJ this is very cool!
Hi @RJ, I can see that you have autosave enabled, how are you not blowing up your function call limit? I imagine, that with autosave every instance of a change is pushed to your convexDB which will result in a requery right? Is there a way to not requery the information to save on the function call limits?
Hi @jejunum—there isn't really a way around needing to query the server for every change to the document when it comes to collaborative editing, whether you're using Convex or some other backend. I don't know what kind of load you're imagining for your use case, but I would guess that Convex for collaborative editing is very price-competitive with at least other hosted collaborative editing solutions (like Tiptap's offering: https://tiptap.dev/pricing), unless you're expecting huge numbers of users to be actively editing the same document at the same time (in which case an offering like Tiptap's, which employs CRDTs, may be better). But I haven't done any actual cost modeling, so I'm not 100% sure