frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

Open in hackernews

Show HN: I made a heatmap diff viewer for code reviews

https://0github.com
118•lawrencechen•6h ago
0github.com is a pull request viewer that color-codes every diff line/token by how much human attention it probably needs. Unlike PR-review bots, we try to flag not just by "is it a bug?" but by "is it worth a second look?" (examples: hard-coded secret, weird crypto mode, gnarly logic, ugly code).

To try it, replace github.com with 0github.com in any pull-request URL. Under the hood, we split the PR into individual files, and for each file, we ask an LLM to annotate each line with a data structure that we parse into a colored heatmap.

Examples:

https://0github.com/manaflow-ai/cmux/pull/666

https://0github.com/stack-auth/stack-auth/pull/988

https://0github.com/tinygrad/tinygrad/pull/12995

https://0github.com/simonw/datasette/pull/2548

Notice how all the example links have a 0 prepended before github.com. This navigates you to our custom diff viewer where we handle the same URL path parameters as github.com. Darker yellows indicate that an area might require more investigation. Hover on the highlights to see the LLM's explanation. There's also a slider on the top left to adjust the "should review" threshold.

Repo (MIT license): https://github.com/manaflow-ai/cmux

Comments

jtwaleson•4h ago
This is really useful. Might want to add a checkbox at a certain threshold, so that reviewers explicitly answer the concerns of the LLM. Also you can start collecting stats on how "easy to review" PR's of team members are, e.g. they'd probably get a better score if they address the concerns in the comments already.
timenotwasted•4h ago
This is very cool and I could see it being really useful especially for those giant PRs. I'd prefer it if instead of the slider I could just click the different heatmap colors and if they indicated what exactly they were for (label not threshold). I get the underlying premise but at a glance it's more to process unless I was to end up using this constantly.
lawrencechen•3h ago
Currently tooltips are shown when hovering on highlighted words. Need to make it visible on mobile though. Was wondering if you were thinking of another way to show the labels besides hovering?
timenotwasted•2h ago
I was referring to something more akin to a legend like you have in the examples "(examples: hard-coded secret, weird crypto mode, gnarly logic)." where I could click "hard-coded secret" (not the best label but you get the idea) and it would filter on those instead of the slider.
383toast•3h ago
Reminds me of this one, highlighting for text https://github.com/mattneary/salience
cdiamand•3h ago
This is something I have found missing in my current workflow when reviewing PR's. Particularly in the age of large AI generated PR's.

I think most reviewers do this to some degree by looking at points of interest. It'd be cool if this could look at your prior reviews and try to learn your style.

Is this the correct commit to look at? https://github.com/manaflow-ai/cmux/commit/661ea617d7b1fd392...

lawrencechen•3h ago
https://github.com/manaflow-ai/cmux/blob/main/apps/www/lib/s...

This file has most of the logic, the commit you linked to has a bunch of other experiments.

> look at your prior reviews and try to learn your style.

We're really interested in this direction too of maybe setting up a DSPy system to automatically fit reviews to your preferences

cdiamand•3h ago
Thank you. This is a pretty cool feature that is just scratching the surface of a deep need, so keep at it.

Another perspective where this exact feature would be useful is in security review.

For example - there are many static security analyzers that look for patterns, and they're useful when you break a clearly predefined rule that is well known.

However, there are situations that static tools miss, but a highlight tool like this could help bring a reviewer's eyes to a high risk "area". I.e. scrutinize this code more because it deals with user input information and there is the chance of SQL injection here, etc.

I think that would be very useful as well.

austinwang115•3h ago
This is a very interesting idea that we’ll definitely look into.
austinwang115•3h ago
This makes reading long PRs not instantly LGTM… now the heatmap guides my eyes so I know where to look.
nzach•3h ago
I think this "'should review' threshold" is a really great idea, but I probably wouldn't be able to trust it enough to make it useful.
wiether•3h ago
I like the idea!

File `apps/client/electron/main/proxy-routing.ts` line 63

Adding a comment to explain why the downgrade is done would have resulted in not raising the issue?

Also two suggestions on the UI

- anchors on lines

- anchors on files and ability to copy a filename easily

lawrencechen•1h ago
Good suggestions! Will make it more URL friendly.

> Adding a comment to explain why the downgrade is done would have resulted in not raising the issue?

Trying it out here with a new PR on same branch: https://0github.com/manaflow-ai/cmux/pull/809

Will check back on it later!

EDIT: seems like my comment online 62 got highlighted. Maybe we should surface the ability edit the prompt.

skeptrune•3h ago
I feel like this is really smart. Going to have to set it up!
austinwang115•2h ago
Just prepend 0 in front of github in your PR link and it should work
skeptrune•2h ago
Ah, I see now.
n2d4•2h ago
> https://0github.com/stack-auth/stack-auth/pull/988

Very fun to see my own PR on Hacker News!

This looks great. I'm probably gonna keep the threshold set to 0%, so a bit more gradient variety could be nice. Red-yellow-green maybe?

Also, can I use this on AI-generated code before creating a PR somehow? I find myself spending a lot of time reviewing Codex and Claude Code edits in my IDE.

lawrencechen•2h ago
Yeah we definitely want to make the gradient and colors configurable.

What form factor would make the most sense for you? Maybe a a cli command that renders the diff in cli or html?

n2d4•1h ago
Either would work, I think. How I do it right now is that I let AI edit automatically, but then check the diff in Cursor before I stage my Git changes. May be different for others.
lawrencechen•45m ago
Yeah, heatmapping the diff before creating a PR would need tighter IDE integration. We're working on cmux for this purpose. It's kinda an IDE, and it lives in the same repo: https://github.com/manaflow-ai/cmux.

After we add the heatmap diff viewer into cmux, I expect that I'll be spending most of my time in between the heatmap diff and a browser preview: https://github.com/manaflow-ai/cmux/raw/main/docs/assets/cmu...

petralithic•2h ago
Change the domain name, you will likely get a cease and desist otherwise.
ramonga•2h ago
Maybe add some caching? I clicked one of the example PRs and it kept loading forever...
lawrencechen•2h ago
Shoot, we should have caching in place already. Taking a look now
lawrencechen•2h ago
Getting rate limited by GitHub, gonna add caching here as well. Temporary workaround is to sign in manually and return to example page: https://0github.com/handler/sign-in
kburman•2h ago
It’s an interesting direction, but feels pretty expensive for what might still be a guess at what matters.

I’m not sure an LLM can really capture project-specific context yet from a single PR diff.

Honestly, a simple data-driven heatmap showing which parts of the code change most often or correlate with past bugs would probably give reviewers more trustworthy signals.

lawrencechen•2h ago
Yeah this is honestly pretty expensive to run today.

> I’m not sure an LLM can really capture project-specific context yet from a single PR diff.

We had an even more expensive approach that cloned the repo into a VM and prompted codex to explore the codebase and run code before returning the heatmap data structure. Decided against it for now due to latency and cost, but I think we'll revisit it to help the LLM get project context.

Distillation should help a bit with cost, but I haven't experimented enough to have a definitive answer. Excited to play around with it though!

> which parts of the code change most often or correlate with past bugs

I can think of a way to do the correlation that would require LLMs. Maybe I'm missing a simpler approach? But agree that conditioning on past bugs would be great

kburman•1h ago
For the correlation idea, you might take a look at how Sentry does it, they rely mostly on stack traces, error messages, and pattern matching to map issues back to code areas. It’s cheap, scalable, and doesn’t need an LLM in the loop, which could be a good baseline before layering anything heavier on top.

As for interactive reviews, one workflow I’ve found surprisingly useful is letting Claude Code simulate a conversation between two developers pair-programming through the PR. It’s not perfect, but in practice the dialogue and clarifying questions it generates often give me more insight than a single shot LLM summary. You might find it an interesting pattern to experiment with once you revisit the more context-aware approaches.

nonethewiser•1h ago
A large portion of the lines of code I'm considering when I review a PR are not part of the diff. This has to be a common experience - think of how often you want to comment on a line of code or file that just isn't in the PR. It happens almost every PR for me. They materialize as lose comments, or comments on a line like "Not this line per-se but what about XYZ?" Or "you replaced this 3 places but I actually found 2 more it should be applied to."

I mean these tools are fine. But let's be on the same page that they can only address a sub-class of problems.

mmastrac•2h ago
I tried it on a low-complexity Rust PR I worked on a few months back and it did a pretty good job. I'd probably change where the highlights live (for example x.y.z() -> x.w.z() should highlight y/w in a lot of cases).

For the most part, it seems to draw the eye to the general area where you need to look closer. It found a near-invisible typo in a coworker's PR which was kind of interesting as well.

https://0github.com/geldata/gel-rust/pull/530

It seems to flag _some_ deletions as needing attention, but I feel like a lot of them are ignored.

Is this using some sort of measure of distance between the expected token in this position vs the actual token?

EDIT: Oh, I guess it's just an LLM prompt? I would be interested to see an approach where the expected token vs actual token generates a heatmap.

lawrencechen•1h ago
Happy to hear!

> Is this using some sort of measure of distance between the expected token in this position vs the actual token?

The main implementation is in this file: https://github.com/manaflow-ai/cmux/blob/main/apps/www/lib/s...

EDIT: yeah it's just a LLM prompt haha

Just a simple prompt right now, but I think we could try an approach where we directly see which tokens might be hallucinated. Gonna try to find the paper for this idea. Might be kinda analogous to the "distance between the expected token in this position vs the actual token."

rishabhaiover•59m ago
wondering what if you run a SAST (a fast one) and share that with codex alongside the code diff?
antback•34m ago
Very, very useful. I'll give it a try. Thanks for sharing!
fao_•5m ago
How do I opt out of this tool? I do not want anyone reviewing my code or projects to use or engage with it and it is explicitly against the TOS of those projects. It would be nice if this tool screened for a robots.txt or something of the sort so that I could ensure that this tool never touches my projects.
smcleod•3m ago
Why does it require signing in to use?

Affinity Studio now free

https://www.affinity.studio/get-affinity
519•dagmx•4h ago•405 comments

The ear does not do a Fourier transform

https://www.dissonances.blog/p/the-ear-does-not-do-a-fourier-transform
208•izhak•3h ago•77 comments

Jujutsu at Google [video]

https://www.youtube.com/watch?v=v9Ob5yPpC0A
54•Lanedo•7h ago•14 comments

TruthWave – A platform for corporate whistleblowers

https://www.truthwave.com
32•mannuch•1h ago•10 comments

Minecraft HDL, an HDL for Redstone

https://github.com/itsfrank/MinecraftHDL
51•sleepingreset•1h ago•5 comments

987654321 / 123456789

https://www.johndcook.com/blog/2025/10/26/987654321/
419•ColinWright•4d ago•77 comments

Springs and bounces in native CSS

https://www.joshwcomeau.com/animation/linear-timing-function/
37•feross•2d ago•4 comments

Launch HN: Propolis (YC X25) – Browser agents that QA your web app autonomously

https://app.propolis.tech/#/launch
70•mpapazian•4h ago•20 comments

Show HN: I made a heatmap diff viewer for code reviews

https://0github.com
118•lawrencechen•6h ago•34 comments

Free software scares normal people

https://danieldelaney.net/normal/
289•cryptophreak•5h ago•209 comments

Learn Multiplatform Z80 Assembly Programming with Vampires

https://www.chibiakumas.com/z80/
30•surprisetalk•4d ago•2 comments

NPM flooded with malicious packages downloaded more than 86k times

https://arstechnica.com/security/2025/10/npm-flooded-with-malicious-packages-downloaded-more-than...
51•jnord•20h ago•19 comments

Independently verifying Go's reproducible builds

https://www.agwa.name/blog/post/verifying_go_reproducible_builds
67•speckx•1d ago•2 comments

Taking money off the table

https://zachholman.com/posts/money-off-the-table
63•holman•1h ago•59 comments

Some people can't see mental images

https://www.newyorker.com/magazine/2025/11/03/some-people-cant-see-mental-images-the-consequences...
92•petalmind•3h ago•195 comments

Show HN: Run a GitHub Actions step in a gVisor sandbox

https://github.com/geomys/sandboxed-step
14•FiloSottile•6d ago•0 comments

Israel demanded Google and Amazon use secret 'wink' to sidestep legal orders

https://www.theguardian.com/us-news/2025/oct/29/google-amazon-israel-contract-secret-code
426•skilled•1d ago•159 comments

Zig's New Async I/O

https://andrewkelley.me/post/zig-new-async-io-text-version.html
180•todsacerdoti•1d ago•49 comments

ZOZO's Contact Solver for physics-based simulations

https://github.com/st-tech/ppf-contact-solver
50•vintagedave•5h ago•27 comments

Show HN: In a single HTML file, an app to encourage my children to invest

https://roberdam.com/en/dinversiones.html
164•roberdam•10h ago•312 comments

I have released a 69.0MB version of Windows 7 x86

https://twitter.com/XenoPanther/status/1983477707968291075
86•rvnx•2h ago•41 comments

US declines to join more than 70 countries in signing UN cybercrime treaty

https://therecord.media/us-declines-signing-cybercrime-treaty?
261•pcaharrier•6h ago•171 comments

Show HN: Meals You Love – AI-powered meal planning and grocery shopping

https://mealsyoulove.com
10•tylertreat•3d ago•8 comments

Tweakcc

https://github.com/Piebald-AI/tweakcc
8•handfuloflight•1w ago•0 comments

Qt Creator 18 Released

https://www.qt.io/blog/qt-creator-18-released
106•jrepinc•4h ago•15 comments

Frozen DuckLakes for Multi-User, Serverless Data Access

https://ducklake.select/2025/10/24/frozen-ducklake/
35•g0xA52A2A•5d ago•2 comments

Estimating the perceived 'claustrophobia' of New York City's streets (2024)

http://mfranchi.net/posts/claustrophobic-streets/
56•jxmorris12•7h ago•52 comments

Replacing EBS and Rethinking Postgres Storage from First Principles

https://www.tigerdata.com/blog/fluid-storage-forkable-ephemeral-durable-infrastructure-age-of-agents
87•mfreed•1d ago•41 comments

PlanetScale Offering $5 Databases

https://planetscale.com/blog/5-dollar-planetscale
35•ryanvogel•5h ago•2 comments

NaN, the not-a-number number that isn't NaN

https://piccalil.li/blog/nan-the-not-a-number-number-that-isnt-nan/
73•tobr•1w ago•77 comments