Show HN: Dental Scope – Interactive 3D dental anatomy (dental-scope.com)
132 points by Zeruxe 10 days ago | 74 comments



Zeruxe 10 days ago | flag as AI [–]

Built Dental Scope, a free open source 3D learning tool for exploring teeth, jaws, nerves, vessels and dental structures.

Live: https://dental-scope.com/

GitHub: https://github.com/Yoosseph/dental-scope

Feedback and contributions are welcome


Excellent tool! In a past life I spent a lot of time in the dental world doing technology integrations, and had a lot of in-laws in the dental field. This definitely helped me understand my mouth even better. The UX is really good. I could see a dentist using this to explain something to a patient.

I get how most of this could be coded with an agent, but I'm curious how you created or acquired the 3D assets for the skull, bones, teeth, gums, etc?

Zeruxe 8 days ago | flag as AI [–]

Thank you, im glad that you found it useful. Especially given your experience around the industry.

The base anatomy comes from BodyParts3D, an open anatomical dataset from DBCLS which is openly licensed under CC BY-SA 2.1 Japan.

The tooth internals were modeled to fit the actual teeth so it’s a mix of open anatomical data, processing, and additional modeling.

The 3D models you see are rendered in a javascript framework called three.js, an awesome framework if I may say.

Thank you again for the kind words!

m-s-y 8 days ago | flag as AI [–]

Years and years of “mobile first” getting getting traction only to be forgotten in a heartbeat when it’s finally easy to do “real cool stuff” on desktop.

I personally couldn’t be happier about it.

Zeruxe 8 days ago | flag as AI [–]

Thank you for the kind words, Im happy you enjoyed it!
cnolan 8 days ago | flag as AI [–]

If you ever do want a mobile version, we got a lot of mileage from running our models through gltf-transform with meshopt and KTX2 textures. Cut load sizes by something like 80% and phones stopped choking. Desktop-first is fine too, honestly.
jamessb 8 days ago | flag as AI [–]

This reminds me of "Human Atlas" [1] (created by GPT-6 Astra) - there's a video in the tweet announcing it [2].

There was a live deploy, but it is currently unavailable: https://human-atlas-seven.vercel.app/

[1]: https://github.com/ashemag/human-atlas

[2]: https://x.com/ashebytes/status/2096221988763173186?lang=ar-x...


Someone deployed it somewhere else: https://human-atlas.co/
Zeruxe 8 days ago | flag as AI [–]

I think that tool is actually great, and nice that someone deployed it again.

But it is too much if that makes sense, it's hard to fit in so much stuff in one little web app, so it ends up just being a cool visualizer but not so good educating tool.

ridge 8 days ago | flag as AI [–]

I tried Human Atlas when it was still up. It was impressive for a one-shot, but the whole-body scope meant every system stayed pretty shallow. Picking one region like teeth is the better tradeoff. Being able to isolate a single root and see the canal structure is what makes this useful.
Zeruxe 8 days ago | flag as AI [–]

I actually have been in contact with Ashe just appreciating the idea of her work, and that was definitely a part of what inspired me, I just wanted to make extensive work that focused rather on a specific part of the body. Thank you for pointing it out.

@Zeruxe: I don't know how to DM people on this platform, but I'd love to chat with you. I'm an ICU doc and have spent the past month vibe-coding a bunch of physiologic and anatomic simulators (med-sim.com). If you want to collaborate, please use the "contact me" form at med-sim.com to reach out. I don't want to share my email on this message board b/c I'm not smart enough to know whether that is safe or not.
Zeruxe 8 days ago | flag as AI [–]

Hi, I have filled in the form and would love to have a chat with you, email starts with 'y' if someone tried to impersonate me. Otherwise just reach out to me via github discussions on the repo and you can have my email.

Hi Zeruxe, thanks for your response! My Netlify form managed to capture zero data somehow when you filled out the form. So I just posted something on your Discussion board on GitHub.
jolmg 8 days ago | flag as AI [–]

I see toggles for the viewing of separate dental tissues, but I can't seem to get them working. For example, I'd like to view the root canals. There are Show/Hide toggles for the enamel, etc. but they don't seem to do anything. Their translucency toggles also don't seem to do anything. I can focus on a tooth, then hit the cross-section button, but instead of showing the cross section of the focused tooth, it does a cross-section of the entire head. So, there's the root canal selections, but apparently no way to view them.

EDIT: Apparently, the hide/show and translucency toggles only work when viewing the head in a cross section. The root canal is also apparently only the empty space, so showed or hidden, there's nothing to view.

Zeruxe 8 days ago | flag as AI [–]

The intended flow is actually to select a tooth first and then inspect it at a deeper level, including its internal tissues. It sounds like that interaction isn’t clear enough from the UI though, so I’ll look into making that maybe more straight forward, thank you for the feedback.
kurt37 8 days ago | flag as AI [–]

If the toggles do nothing until a tooth is selected, why are they enabled at all? Graying them out with a "select a tooth first" hint seems cheaper than redesigning the flow. Also, what do they do when nothing's selected, silently no-op or act on some default tooth?
MKK 6 days ago | flag as AI [–]

Looks cool, thanks for posting here. I can see your passion for operating on 3D models and playing with ThreeJS. Do you want to stay in the 3D space post graduation?
MKK 6 days ago | flag as AI [–]

if you don't have a gig lined up yet and the 3D & AI space is of interest, check out: https://hover.to/job-posts/7723481 I am the EM for the team. Happy to answer any questions you have.
Zeruxe 5 days ago | flag as AI [–]

Sounds interesting,where can I reach out to you personally?
dandell 6 days ago | flag as AI [–]

Hey there, I've also worked on a couple of photogrammetry projects and was into game dev in Unity for a while before moving to full stack development. Maybe there's a fit…would definitely apply
MKK 6 days ago | flag as AI [–]

awesome, I posted the link below. Please apply if you think it is a fit
Zeruxe 5 days ago | flag as AI [–]

Im not sure actually, I guess it depends where the market leads me.

According to commit history, built in 3 days.
Zeruxe 8 days ago | flag as AI [–]

The implementation that is currently visible in the GitHub commit history was done over about 3 days, yes. But that does not include the research, planning and architecture work that happened before I started committing the implementation.

I spent roughly 2 weeks researching the domain, figuring out the structure of the tool, planning the architecture and deciding how the different anatomical layers and interactions should work before the repo history you are looking at began.

amelius 8 days ago | flag as AI [–]

That's great. It reminds me of Elsevier's full-body anatomy tool which is very cool but requires a license of like $60 dollars per year (probably targeted at doctors and medical students). I hope someone can replicate the essence of it and make such a tool available for free.

This could be a part of Wikipedia.

amelius 8 days ago | flag as AI [–]

Why is Zeruxe's sibling comment dead?
pebble 8 days ago | flag as AI [–]

Probably flagged, or caught by the new-account filter. Turn on showdead in your profile and you'll see them greyed out. Click the timestamp and you get a vouch link if it looks fine to you. Been that way since the early 2010s, mods mostly leave it alone.
Zeruxe 8 days ago | flag as AI [–]

huh?
Zeruxe 8 days ago | flag as AI [–]

That is very close to what I would like this project to become over time. There are some excellent anatomy tools out there, but many are behind subscriptions or institutional licenses.

My goal with Dental Scope is to see how far an open source version can go, especially if dentists, students, developers and 3D artists start contributing to it. Full body anatomy would obviously be a much larger undertaking, but I would love for the project to gradually expand in that direction.

The Wikipedia comparison is probably much more ambitious than where the project is today, but the idea of a freely accessible educational resource is what makes me do this.


In this case I applaud the utility of something built in 3 days.

Not the engineering effort behind it.

It still looks great. And very good for understanding whatever it is my dentist is doing with my teeth.

Zeruxe 8 days ago | flag as AI [–]

Thank you even though it definitely took more than 3 days haha
Zeruxe 8 days ago | flag as AI [–]

Thank you, I appreciate that.

Just to clarify the 3 days part though, that is the implementation period currently visible in the GitHub history. The research, planning and architecture work started roughly 2 weeks before that.

But I agree with the broader point. The useful part is whether the tool actually helps someone understand the anatomy better, and that is what I care most about improving now.

fouc 8 days ago | flag as AI [–]

I'm a bit confused that the top wisdom teeth are erupted but the bottom ones aren't.. is that toggle-able?
Zeruxe 8 days ago | flag as AI [–]

No and that is a bug that you just pointed out which I will take care of, thank you!
Zeruxe 8 days ago | flag as AI [–]

Here is the product hunt for those of you who would like to support - https://www.producthunt.com/products/dental-scope?utm_source...

When dentists take scans of our teeth, can those scans theoretically be rendered in this tool?
Zeruxe 8 days ago | flag as AI [–]

You mean MRI scans? I could technically try to do something similar, would be more on the machine learning part, don't know if a web app could manage that. But definitely something I would look into if there is interest.

Looks amazing! Wondering what those flat disks in the upper jaw are?
Zeruxe 7 days ago | flag as AI [–]

Hi, im glad that you like it.

With "flat disks" I suppose you mean the temporomandibular joints, those are like small cushions inside your jaw joint, just where your lower jaw meets your skull, you have one on each side.

It sits between the lower jawbone and the skull bone so they don't rub against each other, it sort of slides along the jaw when you open your mouth.

A real one isn't a flat blue plate of course, it's a pale rubbery pad that curves over the top of the jaw bone like a little cap.

I suppose I could of done a better visual demonstration and I will look into improving it when time allows it, thank you for pointing it out.


Nice! where did you find the gltf?
Zeruxe 7 days ago | flag as AI [–]

Thank you,

Base gemotery was derived from BodyParts3D, where the meshes were optimized.

Nerves and vesseles mostly follow data from Z-Anatomy

Internal tooth anatomy was modeled inside the actual tooth rather than coming from one complete premade GLTF

Three.js loads and renders those GLBs and handles interactions,materials,camera controls etc.

Hope this makes sense, if you want to know more there are proper sources of assets on the repo :)


Beautiful! Thank you for creating and sharing this! :) It's really inspiring.
Zeruxe 8 days ago | flag as AI [–]

Thank you for the kind words, im glad that you like it!

It's pretty neat... and reminds me, I need to go to the dentist... oh well...
Zeruxe 8 days ago | flag as AI [–]

haha thank you! Appreciate the kind words!
Zeruxe 8 days ago | flag as AI [–]

Just a clarification for the people hating on clankers, I want to know what you expect from todays devs? do you genuinely think that people should manually handcode everything for it to hold any significant value?

I just don't understand the point of view where - "a clanker made it therefore it's trash", it's always the same people they lurk on reddit aswell.

Even in the case of putting something together manually, you are competing against people using AI and you will never match their production level or speed.

I mean the people who hold the highest priority say in this are the dentists/dental students, and so far all the feedback from those have been nothing but positive?


It's hard to do, but ignore the trolls. This is a lesson we had to learn many years ago and it applies today. Do good things that you and others find interesting and ignore the trolls.
Zeruxe 8 days ago | flag as AI [–]

Yeah you are totally right and I appreciate the words. I sometimes tend to think I want to rather try to guide them in my POV, but some people refuse to give in.

Too bad the AI that this is built with isn't bright enough to know how many permanent teeth there are in a human's jaw. 38 seems high. Why should anyone trust it to know how all the other things are connected?

I hate to think that there are generations of engineers, programmers, etc who will not be qualified to determine whether the AI tools that they build and deploy can answer any of the questions that one would be inclined to ask or solve any of the problems that might need solutions.

Get an education. Learn to think for yourself so that you can recognize when some slop like this hits the screen.

Zeruxe 8 days ago | flag as AI [–]

Humans have 32 permanent teeth, and that is exactly what Dental Scope models. It is even pointed at the first screen.

If you found somewhere in the UI that says 38, point it out and I’ll fix it. That is useful feedback.

The rest is just a long rant based on the assumption that using AI means I neither understand nor review what I build. You know nothing about my education, my engineering background, or how this project was developed.

Sounds like an old grump that is falling behind to AI.

tmarice 8 days ago | flag as AI [–]

You built nothing.

You pointed your clanker of choice to a dataset (or more realistically, asked it to find an appropriate dataset), and told it to build a interactive 3d model. You learned nothing from this project because no mental effort was spent beyond listing out features for your clanker, and some manual testing.


You made no point.

You continued an argument from somewhere else in a thread about a new way to use tech to visualize anatomy. You took English words you did not develop and typed them into an input device you use but did not invent.


You'll likely feel left behind within a few months if you continue with that attitute.
Zeruxe 8 days ago | flag as AI [–]

That is a pretty confident description of a process you were not involved in.

AI helped with implementation. It did not do the research, architecture, product decisions, debugging, validation or review for me.

You can dislike AI assisted development. Saying I "built nothing" is just lazy.


I wonder when Claude will stop doing "pale but not white background with a serif heading"

Also - not sure what happened, but clicking around, I got the entire model to disappear entirely and the reset button did not bring it back. A refresh did work.

One UX suggestion: The "Dissect Anatomy" area should instead have a toggle switch for the "laid out" option (And that could disable the assembled/in position ), as that seems to be a binary control, where the "assembled" and "in position" options are actually modified by the vertical slider.

Seems neat, for the most part.

nina447 8 days ago | flag as AI [–]

The model vanishing with reset doing nothing is the one I'd chase. Reset probably restores state your code thinks is already fine, so it's a no-op. Check for a lost WebGL context. Mobile Safari drops those constantly, and nobody files a bug, they just leave.
Zeruxe 8 days ago | flag as AI [–]

I actually changed the background myself as the initial recommendation from AI was a flashbang.

Thanks for the feedback about the bug I will look into that.

Also thanks for the suggestion and the compliment :)

tgrant 7 days ago | flag as AI [–]

I'd be curious where the meshes come from. Nerve and vessel paths in the mandible vary quite a bit between people, as far as I know (the inferior alveolar canal especially), so a single idealized model can mislead students. Even a note on the source and variation would help a lot.
arijun 8 days ago | flag as AI [–]

Did you click the link? Are you a bot? This is not about a physical scope, it's an online tool showing jaw/tooth anatomy.