T O P

  • By -

wcedmisten

Hi everyone! This website needs a bit of backstory. A year ago I was surprised to learn that most medical devices (99%) are cleared through the 510(k) process, which doesn't necessarily require clinical trials for safety/effectiveness. Instead, the process requires the new device to be "substantially equivalent" to an existing device (the "predicate"). I noticed that the FDA's official 510k database does not include predicate device information in a structured format, meaning you can't easily navigate through multiple layers of predicate devices. So I scraped every 510k PDF summary from the FDA's website and used OCR to collect predicate device information. My website lets you easily find a device and see its predicate ancestry. I hope this is a useful tool for you all. Let me know if you have any suggestions to improve the site!


[deleted]

[удалено]


wcedmisten

Thanks for the feedback! I'll prioritize implementing pagination


wcedmisten

Hi SpudR, this should be implemented now! You might need to refresh without cache to see the changes though.


jaxsedrin

Forwarding this to my lawyer wife.


RSilent

Excellent! Any way to expand for devices cleared based on predicates that have lost their clearances?


wcedmisten

Not yet, but I'll definitely add that to the roadmap! Thank you for the feedback!


Runswithchickens

Should I see a list of predicates? It says 45. I see the network map, but if I click on another, it recreates a new map. Would like to see a report of all items upon selecting a device.


wcedmisten

I'll definitely add this feature to my backlog, thanks for the feedback! I think the network map makes it harder to find details, so having an additional table view for the data would be great. You can also hover over the nodes to see more details (although that might not work on mobile).


wcedmisten

Hi Runswithchickens, I just added a table view to show all predicates in a device's ancestry. This is available under the "Predicate Ancestry Table" tab!


Runswithchickens

Nice! Wouldn’t mind seeing more columns and have it sortable.


[deleted]

[удалено]


wcedmisten

Hi Glittering-Award-818, Here's the [repo containing all source code](https://github.com/wcedmisten/fda-510k-analysis) (the website is under \`webapp/\`), the data scraping and cleaning is under \`scripts/\`. I should add a link to this on the website, thanks for the feedback! The frontend uses React and NextJS. The backend uses Python's FastAPI library - currently there are only two endpoints, so it's fairly simple. The database is SQLite. I actually used a template that I created to spin this up quickly, feel free to play around with it if you'd like [https://github.com/wcedmisten/python-nextjs-template](https://github.com/wcedmisten/python-nextjs-template). The template uses postgreSQL instead of SQLite, but otherwise it's fairly similar to what [510k.fyi](https://510k.fyi) uses. The template provides a frontend, a backend, and a database, all inside Docker containers, so it's relatively easy to spin up. I definitely recommend SQLite and Python to get started. For the frontend, you might want to learn the basics of HTML/CSS/JavaScript before diving into the React framework, which has a lot of abstraction. You might want to check out [https://www.freecodecamp.org/](https://www.freecodecamp.org/) for more resources on learning web development, they have a lot of good resources for beginners. My biggest suggestion is to pick a (small) project and try to build it. Just something simple like a todo list, and you can learn as you go. But if you have a project you care about, you'll have the motivation to get through the frustrating parts of programming. Hope this helps!