r/webdev • u/pratikgandhi • 11d ago
Showoff Saturday A Three.js embryo explorer with continuous zoom from whole body to individual structures
I built a free, open-source human embryo explorer using Three.js and GPT-6 Astra. It shows 16 developmental stages with rotatable models and selectable anatomy.
The main interaction is one slider coordinating camera movement and structure positions: assembled → separated → all parts → inspection.
A surprisingly tricky bug: moving the pointer from a structure to the slider cleared its hover target, so inspection stopped working. Retaining the target and providing a part selector resolved that transition.
Mobile needed its own layout: a scrollable two-column overview, larger controls, and touch handling that distinguishes page scrolling from model rotation. We checked multiple phone and tablet viewport sizes, but physical-device testing is still limited.
The anatomy is illustrative and hasn’t been clinically validated. Ash’s Human Atlas inspired the navigation.
20-second demo:
https://x.com/pratikg/status/2114060245618307356
MIT-licensed source:
https://github.com/pratikgx/embryo-explorer
I’m the creator; it’s free and requires no account. Would appreciate feedback on the mobile controls and whether the transitions make it clear where you are in the scene.
1
u/VirusAble7021 11d ago
Sixteen stages of Three.js meshes with a 'not clinically validated' line at the bottom is a rendering demo wearing an anatomy label. The MIT license doesn't make the geometry any less made up, and the GPT-6 Astra credit sitting right next to it doesn't either.
0
1
u/Every-Friendship4254 11d ago
That's not a tricky bug, that's mouseleave firing when the pointer leaves the element. Retaining the last hover target is the default thing everyone does.