HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
aplavin
blackhole.plav.in
TypeScript2026–2026
aplavin / blackhole.plav.in

blackhole.plav.in

Black hole visualization

2Distinct people
2Mentions
0Explicit recommenders
18GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Black hole visualization

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 5:04:57 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by 3-hour interval2 dated mentions

Observed mentions: 2026-07-23 13:29:24 UTC to 2026-07-27 04:17:52 UTC.

012026-07-23 12:00:00 UTC to 2026-07-23 15:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 commentsJul 23, 12:002026-07-23 15:00:00 UTC to 2026-07-23 18:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-23 18:00:00 UTC to 2026-07-23 21:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-23 21:00:00 UTC to 2026-07-24 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-24 00:00:00 UTC to 2026-07-24 03:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-24 03:00:00 UTC to 2026-07-24 06:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-24 06:00:00 UTC to 2026-07-24 09:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-24 09:00:00 UTC to 2026-07-24 12:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-24 12:00:00 UTC to 2026-07-24 15:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-24 15:00:00 UTC to 2026-07-24 18:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-24 18:00:00 UTC to 2026-07-24 21:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-24 21:00:00 UTC to 2026-07-25 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-25 00:00:00 UTC to 2026-07-25 03:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-25 03:00:00 UTC to 2026-07-25 06:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-25 06:00:00 UTC to 2026-07-25 09:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsJul 25, 06:002026-07-25 09:00:00 UTC to 2026-07-25 12:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-25 12:00:00 UTC to 2026-07-25 15:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-25 15:00:00 UTC to 2026-07-25 18:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-25 18:00:00 UTC to 2026-07-25 21:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-25 21:00:00 UTC to 2026-07-26 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-26 00:00:00 UTC to 2026-07-26 03:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-26 03:00:00 UTC to 2026-07-26 06:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-26 06:00:00 UTC to 2026-07-26 09:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-26 09:00:00 UTC to 2026-07-26 12:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-26 12:00:00 UTC to 2026-07-26 15:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-26 15:00:00 UTC to 2026-07-26 18:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-26 18:00:00 UTC to 2026-07-26 21:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-26 21:00:00 UTC to 2026-07-27 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-27 00:00:00 UTC to 2026-07-27 03:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-07-27 03:00:00 UTC to 2026-07-27 06:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsJul 27, 03:00

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Jul 23, 12:002026-07-23 12:00:00 UTC2026-07-23 15:00:00 UTC110
Jul 23, 15:002026-07-23 15:00:00 UTC2026-07-23 18:00:00 UTC000
Jul 23, 18:002026-07-23 18:00:00 UTC2026-07-23 21:00:00 UTC000
Jul 23, 21:002026-07-23 21:00:00 UTC2026-07-24 00:00:00 UTC000
Jul 24, 00:002026-07-24 00:00:00 UTC2026-07-24 03:00:00 UTC000
Jul 24, 03:002026-07-24 03:00:00 UTC2026-07-24 06:00:00 UTC000
Jul 24, 06:002026-07-24 06:00:00 UTC2026-07-24 09:00:00 UTC000
Jul 24, 09:002026-07-24 09:00:00 UTC2026-07-24 12:00:00 UTC000
Jul 24, 12:002026-07-24 12:00:00 UTC2026-07-24 15:00:00 UTC000
Jul 24, 15:002026-07-24 15:00:00 UTC2026-07-24 18:00:00 UTC000
Jul 24, 18:002026-07-24 18:00:00 UTC2026-07-24 21:00:00 UTC000
Jul 24, 21:002026-07-24 21:00:00 UTC2026-07-25 00:00:00 UTC000
Jul 25, 00:002026-07-25 00:00:00 UTC2026-07-25 03:00:00 UTC000
Jul 25, 03:002026-07-25 03:00:00 UTC2026-07-25 06:00:00 UTC000
Jul 25, 06:002026-07-25 06:00:00 UTC2026-07-25 09:00:00 UTC000
Jul 25, 09:002026-07-25 09:00:00 UTC2026-07-25 12:00:00 UTC000
Jul 25, 12:002026-07-25 12:00:00 UTC2026-07-25 15:00:00 UTC000
Jul 25, 15:002026-07-25 15:00:00 UTC2026-07-25 18:00:00 UTC000
Jul 25, 18:002026-07-25 18:00:00 UTC2026-07-25 21:00:00 UTC000
Jul 25, 21:002026-07-25 21:00:00 UTC2026-07-26 00:00:00 UTC000
Jul 26, 00:002026-07-26 00:00:00 UTC2026-07-26 03:00:00 UTC000
Jul 26, 03:002026-07-26 03:00:00 UTC2026-07-26 06:00:00 UTC000
Jul 26, 06:002026-07-26 06:00:00 UTC2026-07-26 09:00:00 UTC000
Jul 26, 09:002026-07-26 09:00:00 UTC2026-07-26 12:00:00 UTC000
Jul 26, 12:002026-07-26 12:00:00 UTC2026-07-26 15:00:00 UTC000
Jul 26, 15:002026-07-26 15:00:00 UTC2026-07-26 18:00:00 UTC000
Jul 26, 18:002026-07-26 18:00:00 UTC2026-07-26 21:00:00 UTC000
Jul 26, 21:002026-07-26 21:00:00 UTC2026-07-27 00:00:00 UTC000
Jul 27, 00:002026-07-27 00:00:00 UTC2026-07-27 03:00:00 UTC000
Jul 27, 03:002026-07-27 03:00:00 UTC2026-07-27 06:00:00 UTC101

What Hacker News says

2 sources
If anyone's interested in the accuracy, this is very 'visualisation grade' software. Its a bit of a pet peeve of mine that people present these sims as being very physically accurate, when they contain major inaccuracies, some of which are very obvious and/or deliberate. This one has some serious physical limitations I wouldn't mind at all if it didn't say that this was a *physically accurate* black hole specifically, but this now falls under misleading science communication in a way that often gets hand waved away as if it doesn't matter, so we've got to clear some things up! 1. The accretion disk shouldn't be red, people just expect it because it looks cool. Black hole accretion disks are near universally hot enough to be blue. Interstellar did this too, and tried to handwave it away very unconvincingly 2. This is a non/low (?) spin bla
Read the rest
ck hole, which isn't super duper realistic 3. It ignores the position of the camera (which affects the lorentz shifting) 4. The doppler shifting isn't terribly accurate 5. It doesn't model the accretion disk temperature distribution or colour with any kind of accuracy. Usually you model accretion disks as a blackbody radiator, shift it by the doppler, and to display this convolve this against the human eye response (LMS), go to XYZ, then RGB, do a physical tonemapping step, before an sRGB conversion. This instead does none of that - no step of this is done with any physical accuracy. Its not even illustratively correct as we'll get into 6. The actual radiative transfer is very simplified compared to what you'd use for realsies, and isn't based on any real numbers, with very simplified equations. The opacity and emissivity of the disk is arbitrary, as is the size, and it does not correctly incorporate brightness or extinction, eg here https://github.com/aplavin/blackhole.plav.in/blob/2f004bfeca... is super simplified 7. The wrong equation is used for the doppler calculation. They use the I^3 variant, whereas the data you get out of a disk sample is *radiant flux* which is actually F_obs = F_emit / (z+1)^4. This is a very common mistake in image processing, which means that the doppler shift and observer brightness isn't correct. Surface brightness over here https://github.com/aplavin/blackhole.plav.in/blob/2f004bfeca... is *not* a spectral radiance but instead a radiant flux Stuff like the brightness -> colouring conversion is particularly inaccurate. Eg if you check out the source: https://github.com/aplavin/blackhole.plav.in/blob/2f004bfeca... It maps the pseudo brightness completely arbitrarily to colour. The resulting colour/brightness here then doesn't correspond to anything remotely physical. It also performs a *linear* mapping of a linear quantity (brightness) to sRGB (which is a nonlinear process!!), which means that it doesn't even retain any of the underlying physical characteristics of the brightness simulation, which itself is quite inaccurate. Its vibes all the way down This is all fine if you're doing visualisation, but this isn't an accurate simulation. I wish this was just called a visualisation of a black hole, but its being communicated as if this is super hard science with credentials and all
In Show HN: Physically accurate black hole you can put in your room
aplavin·Jul 23, 2026Submission

Show HN: Physically accurate black hole you can put in your room

We have a black hole at home — with actual relativistic physics, live in your browser. I'm Sasha (Alexander) Plavin, an astrophysicist at Harvard's Black Hole Initiative studying quasars and black hole environments. I work with raytracing/radiative transfer simulations professionally, and wanted to make one anyone can play with — so I built this app. Put the black hole onto your screen (any browser), or directly into your room with AR or VR (requires WebXR, for example Chrome on Android, or any VR headset). When looking around, pay attention to unintuitive relativistic effects: rays bending around the black hole, and special relativistic "Doppler boosting" changing brightness depending on the viewing angle — zoom out to see the fast jet where the latter effect is especially pronounced. Faint markers show where other viewers are standing r
Read the rest
ight now. Alternatively, put the black hole in front of your camera and watch it lens your actual surroundings. Light winds around the hole, so you see both what's in front of you and what's behind you at once (when the device and browser allow both camera feeds). The closer to the black hole, the stronger the bending — and the longer the light-travel delay: wave at it and watch the changes propagate inward. (unfortunately, WebXR restrictions make AR passthrough and the camera feed mutually exclusive) No signup, basic features work on every device, no data uploaded — the camera feed never leaves your device. Source code: https://github.com/aplavin/blackhole.plav.in. Enjoy having a black hole in your room, or use it for education/outreach — any questions, feedback, or suggestions are welcome!
477 points · Open discussion

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.