3 ms·
Yep, this is why we're building a time-travel debugger for JS at https://replay.io https://replay.io . The basic idea of Replay: Use our special browser or Nod
by acemarke 4y ago
Yep, this is why we're building a time-travel debugger for JS at https://replay.io https://replay.io .
The basic idea of Replay: Use our special browser or Node forks to make a recording of your app, load the recording in our debugger, and you can pause at _any_ point in the recording. In fact, you can add print statements to any line of code, and it will show you what it _would_ have printed _every time that line of code ran_!
From there, you can jump to any of those print statement hits, and do typical step debugging and inspection of variables. So, it's the best of both worlds - you can use print statements and step debugging, together, at any point in time in the recording.
We record the OS-level syscalls from the browser, and replay those in the cloud against hundreds of process forks of the exact browser version while you're debugging. When you step backwards, evaluate a print statement that ran many times, or jump to a different pause point, the backend is using those many forked processes to evaluate those results and ship the info to the debugging client.
I can say that we personally use Replay to debug our own dev work on Replay on a daily basis, and it makes a _huge_ difference. I recently used Replay to debug an obscure E2E test failure ( https://twitter.com/acemarke/status/1547682026181996554 https://twitter.com/acemarke/status/1547682026181996554 ), and a bug with React-Redux v8's `connect` and React's experimental `<Offscreen>` ( https://twitter.com/acemarke/status/1559643125865390083 https://twitter.com/acemarke/status/1559643125865390083 ).
See https://replay.io/record-bugs https://replay.io/record-bugs for the getting started steps to use Replay, and we've got some neat articles about some of the technology at https://docs.replay.io/docs/how-replay-works-2adcccaf8f7743f3967a70fbfcc72c4f https://docs.replay.io/docs/how-replay-works-2adcccaf8f7743f... .
If you've got any questions, please come by our Discord and ask! https://replay.io/discord https://replay.io/discord