Ask HN: How does Roam Research “call home”?
I’ve been trying to figure out how Roam Research (https://roamresearch.com/) sends data back and forth from and to the server.
The app seems very responsive, and when I add/omit/edit objects, there’s nothing under the Network tab in Chrome’s dev tools.
How is RR doing this? I noticed IndexedDB instances but deleting them didn’t seem to affect anything. They're using websockets I believe. Look in the network tab for .ws (hosted on Firebase). You can inspect the messages using Chrome. It sends updates for every change to a block you make. Hmm, nothing in the WS tab of Chrome Dev Tools but you're probably right. A websocket? I'm assuming that once the websocket is open, any future traffic inside wouldn't be logged in the developer tools? Websockets probably. The built JS contains references to both WebSocket and Firebase.