Show HN: I'm a dermatologist and I vibe coded a skin cancer learning app (molecheck.info)

429 points by sungam ↗ HN
Coded using Gemini Pro 2.5 (free version) in about 2-3 hours.

Single file including all html/js/css, Vanilla JS, no backend, scores persisted with localStorage.

Deployed using ubuntu/apache2/python/flask on a £5 Digital Ocean server (but could have been hosted on a static hosting provider as it's just a single page with no backend).

Images / metadata stored in an AWS S3 bucket.

95 comments

[ 0.26 ms ] story [ 81.0 ms ] thread
(comment deleted)
Basal Cell Carcinoma is very gross!

Think a set number of questions to start with would be good. Not sure if there’s an end point, I drifted off after ~20 or so

Wow this game just proves to me how difficult your job is. I am basically getting 50%.

One or two seemed quite obvious to me as concerning or not but turned out to be the other way

Why do the images get a weird offset slice effect on safari on mobile after submitting a guess with the buttons?
This is a good use of vibecoding. The main "algorithm" to be implemented is very straightforward , and for the hard stuff, we have an expert.
To my eye most of the basal cell carsinomas looked like everyday rashes, pimples or scratches. My correct rate was under chance. This could be hypochondria inducing for many?
Very cool. I learned a lot as a non dermatologist but someone with a sister who has had melanoma at a very young age.

I went from 50% to 85% very quickly. And that’s because most of them are skin cancer and that was easy to learn.

So my only advice would be to make closer to 50% actually skin cancer.

Although maybe you want to focus on the bad ones and get people to learn those more.

This was way harder than I thought this detection would be. Makes me want to go to a dermatologist.

I found the first dozen to be mostly cancer and then the next dozen were mostly non-cancer. (Not sure if it's randomized.) (Also, I'm really bad at identifying cancerous vs non-cancerous skin lesions.)
> So my only advice would be to make closer to 50% actually skin cancer.

If I were to code this for "real training" of a dermatologist, I'd make this closer to "real world" training rate. As a dermatologist, I'll imagine that probably just 1 out of 100 (or something like that) skin lesions that people could imagine are cancerous, actually are so.

With the current dataset, there're just too many cancerous images. This makes it kind of easy to just flag something as "cancerous" and still retain a good "score" - but the point is moot, if as a dermatologist you send _too many_ people without cancer to do further exams, then you're negating the usefulness of what you're doing.

Thought about this some more. I think you want to start at 100% or high so people actually learn what needs to be learned: what malignant skin conditions actually look like.

And then once they have learned you get progressively harder and harder. Basically the closer to 50% you are the harder it will be to have a score higher than chance/50%.

What happens if I make a picture of my cat with it?
Half of these basal cell carcinomas look like picked pimples. Are there any sort of protocols for self screening for carcinomas a la self-testing ones testicles? I've never heard of anything other than the ABCDE for moles
Is there any reputable (reviewed, endorsed) AI model to detect skin cancer? I have a lot of similar moles, and playing with this app make me concern about all of them.
Lots of models out there but I would not trust any for diagnosis without review of a dermatologist yet. The challenge is unanticipated edge cases and managing risk/liability/regulation. I have no doubt that if a major AI company focused on this problem then these issues could be overcome with current technology but perhaps the market is not big enough to justify the investment required.
I'm a doctor too and would love to hear more about the rationale and process for creating this.

It's quite interesting to have a binary distinction: 'concerned vs not concerned', which I guess would be more relevant for referring clinicians, rather than getting an actual diagnosis. Whereas naming multiple choice 'BCC vs melanoma' would be more of a learning tool useful for medical students..

Echoing the other comments, but it would be interesting to match the cards to the actual incidence in the population or in primary care - although it may be a lot more boring with the amount of harmless naevi!

This is awesome. Great use of AI to realize an idea. Subject matter experts making educational tools is one of the most hopeful things to come out of AI.

It’s just a bummer that it’s far more frequently used to pump wealth to tech investors from the entire class of people that have been creating things on the internet for the past couple of decades, and that projects like this fuel the “why do you oppose fighting cancer” sort of counter arguments against that.

On the contrary. There is a whole raft of start-ups around this idea and other related ones. And almost all of them have found the technical challenges manageable, and the medical and ethical challenges formidable.
Learned quite a bit and seems like a basic but necessary thing to know about!
Nice Job. This really highlights that people who obsess in telling us that "AI hallucinates", and "AI isn't intelligent", are missing the point. At the end of the day, it's simply useful, and incredibly empowering.
I kind of love the diy aspect of ai coding.

A dermatologist a short while ago with this idea would have to find a willing and able partner to do a bunch of work -- meaning that most likely it would just remain an idea.

This isn't just for non-tech people either -- I have a decades long list of ideas I'd like to work on but simply do not have time for. So now I'm cranking up the ol' AI agents an seeing what I can do about it.

(comment deleted)
I feel like the name “vibe code” is really the only issue I have. Enabling everyone to program computers to do useful things is very very good.
I believe this captures it well. There are many people that would have previously needed to hire dev shops to get their ideas out and now they can just get them done faster. I believe the impact will be larger in non-tech sectors.
Thank you for making this.

My dad passed away from squamous cell carcinoma in 2010. In retrospect, through my casual research into the space and tools like this one, it occurs to me that the entire event was likely preventable and occurred merely because we did not react quickly enough to the cancer’s presence.

I’ve learned that basal cell carcinoma can look scarily unremarkable!

Would be useful to add some explanation on the defining features that would give it away to a dermatologist.

The zoomed in view is great if you’re commonly examining under magnification, but perhaps a slightly less zoomed view (or ability to switch between each) might make this more practical for common folks.
Hi! That's really useful tool!

I wish it also explained the decision making process, how to understand from the picture what is the right answer.

I'm really getting lost between melanoma and seborrheic keratosis / nevus.

I went through ~120 pictures, but couldn't learn to distinguish those.

Also, the guide in the burger menu leads to a page that doesn't exist: https://molecheck.info/how-to-recognise-skin-cancer

Also came to the same conclusion. I want a mode where 50% of the set are melanomas, and the other 50% are “brown benign things”.
I'm not a doctor, but there's an ABCDE[0] rule of thumb to spot signs of skin cancer:

Asymmetry: One half of the spot is unlike the other half.

Border: The spot has an irregular, scalloped, or poorly defined border.

Color: The spot has varying colors from one area to the next

Diameter: melanomas are usually greater than 6 millimeters, or about the size of a pencil eraser

Evolving: Changing in size, shape, color, or new symptoms (itching, bleeding)

[0] https://www.aad.org/public/diseases/skin-cancer/find/at-risk...

Are there an equal amount of cancer and non cancer images? In my case the vast majority (I'd say around 75%) are cancerous.
Perfect use of AI assisted coding - a domain expert creating a focused, relatively straightforward (from a programming perspective) app.

@sungam, if your research agenda includes creating AI models for skin cancer, feel free to reach out (email in profile), I make a tool intended to help pure clinical researchers incorporate AI into their research programmes.

would a tool that can take a truly tiny sample out of the lesion be a valuable complement? so we can send it in (with the tool) and get a lab test done?
I like the project! Congrats on the launch.

As I understand it, size is one of the key indicators of melanoma. But in some of these images, it’s difficult to tell whether the mole is 1 mm or 10 mm. I assume your image set doesn’t include size information. If you can find sources with rulers or some kind of scale, that would be very helpful.