We love PartyKit as a real time sync connector for Fireproof. This lets us offer CouchDB or Firebase-like experience with only a browser and less than 100 lines of JavaScript on the backend. Here is what our PartyKit server looks like for the curious: https://github.com/fireproof-storage/fireproof/blob/main/pac...
Shared meeting notes is a common one. Brainstorming in FigJam is another.
If you're collaborating with other folks on a project, it's beneficial to see updates in realtime to maintain that one source of truth. Otherwise your work and theirs might overlap and someone will need to resolve merge conflicts. That, or you go the locking route, which comes with its own set of hassles.
Obvious plug but my company[1] is building a multi-user real-time 3d engine. Think Figma meets Unity.
There are lots of fun use cases around working collaboratively on subparts of a larger 3d system without having to break it apart:
- architects working on different parts of a building
- engineers working on different pieces of a CAD model
- game designers working on different levels, etc
> anyone have good examples of real time multi user apps?
My SaaS day-job is a real-time multi-user checklist web-app - built using SignalR.
We're able to fit tens of thousands of concurrent users on a single Azure AppService instance - and we're self-hosted so we don't have IaaS-rug-pulling-anxiety - PartyKit looks cool, but I take a long-term view (5+ years) before adopting a technology, and PartyKit's brochure website is lacking information in that area...
You can use WebSockets with NodeJS; there's a variety of libraries for this, but (naturally) it's npm-hell; but I'm not aware of any easy-to-use WebSocket wrappers/adapter libraries like what SignalR is, but it's been a while since I looked.
SignalR's two main selling-points back-in-the-day (2014-ish) was its solid cross-browser support and how it abstracted over WebSockets, Comet, SSE, long-polling, et al - but it's 2024 now and everyone's on Chromium or WebKit, so cross-browser support is moot, and and WebSockets+SSE now covers all use-cases; so there's less going-for SignalR thesedays, and since the ASP.NET Core rewrite of SignalR it just doesn't scale as well on the client-side (as it no-longer multiplexes multiple Hub requests over a single connection, which is crazy... and HTTP/2+QUIC+3 doesn't really help, I find).
I frequently do this in Notion, especially in more brainstorm-y meetings. Also good for notetaking; I might be writing most of the notes, but then start talking more, and see someone jump in to take my place in the notes.
Even with things like docs and sheets, though the capability is there, I find myself rarely editing in real time with others.