Remix.run Logo
Tool to visually understand big PRs(logphase.github.io)
1 points by logphase 5 hours ago | 1 comments
logphase 5 hours ago | parent [-]

I've always struggled to hold a large PR in my head. AI-assisted coding has made it worse. Especially when dozens of files are modified, it became harder to understand what changed: distinguishing important changes from trivial ones and identifying if regressions were introduced. I was also tired of switching between file and method to build the whole picture in my head — I wanted all the context at the point of the function I was reviewing. I guess I'm just more of a visual person.

I realized that what I wanted to know was how this PR affects the various code-paths in my codebase. And the best way to know the codepath is the generate an Abstract syntax tree. So I built a tool which takes a PR, parses the codebase's AST, then maps the code graph with user journeys in the codebase. It presents these steps in natural language, identifies which step in the journey has changed, and lets you easily see the code—not just the function code but the whole call graph, with annotations showing what has changed and what hasn't. For me and the people who've used it, it is immensely useful : to know if something important has changed, and what and why. Personally, my review time has reduced 10x — and even better, I've built a much stronger mental model of how the system is working, even understanding parts of the system I would not normally touch or work on because of cognitive load.

Here is an example: https://logphase.github.io/underscore-demo-ddd/#/journeys

and the tool: https://underscore.logphase.ai/