pyaar project
← All projects
Portfolio

SaMD Clearance Visualization

Interactive visualization of FDA 510(k) clearances for Software as a Medical Device (SaMD). Explores regulatory trends, predicate device networks, and clearance timelines across product codes.

ProjectHealthcareVisualizationFeatured
SaMD Clearance Visualization preview
🏥
Interactive visualization of FDA 510(k) clearances for Software as a Medical Device (SaMD), predicate networks, clearance timelines, and product code analysis.

GitHub: prahlaadr/samd-clearance-viz

Demo: https://prahlaadr.github.io/samd-clearance-viz/


What It Does

Explores the FDA's 510(k) Premarket Notification database for software-as-a-medical-device submissions. Visualizes predicate device relationships, clearance trends over time, and regulatory pathways by product code.

Why It Exists

Understanding the SaMD regulatory landscape, which products get cleared, how they reference each other as predicates, and how clearance patterns shift over time, is valuable for regulatory strategy in health tech.


What the Visualization Shows

A horizontal lollipop chart displaying the top 20 SaMD product codes by clearance volume, sorted by average days to FDA clearance. The chart reveals significant variation in clearance times across device categories.

InsightValue
Fastest categoryQNP (GI Lesion Detection) — 29 days avg
Slowest categoryOEB (Medical Image Management) — 285 days avg
Highest volumeQIH (Medical Image Management) — 75 devices
Overall average156 days across 206 SaMD clearances

Interactive Features

  • Click any product code to view all 510(k) submissions for that category on 510k.innolitics.com
  • Hover over data points for detailed metrics (avg days, range, device count)
  • Top 5 fastest categories highlighted in orange

Data Source

  • Source: FDA 510(k) clearance database via Innolitics 510(k) Database
  • Period: January 2025 – January 2026
  • Filter: Software as a Medical Device (SaMD) only
  • Total: 206 clearances across 46 unique product codes

How It Was Built

Raw FDA data was analyzed using DuckDB and validated with Polars:

SELECT
    productcode,
    COUNT(*) as device_count,
    ROUND(AVG(days_to_clearance), 0) as avg_days,
    MIN(days_to_clearance) as min_days,
    MAX(days_to_clearance) as max_days
FROM samd_clearances
WHERE days_to_clearance IS NOT NULL
GROUP BY productcode
ORDER BY device_count DESC
LIMIT 20;

The visualization is built with D3.js v7 featuring:

  • Horizontal lollipop chart with custom SVG rendering
  • Clickable Y-axis labels linking to 510k.innolitics.com
  • Product code descriptions from FDA regulation summaries
  • Interactive tooltips with detailed metrics
  • Innolitics brand colors (#2D3F86 primary, #E85036 highlight)
  • Poppins typography via Google Fonts

Product Code Categories

CodeDescription
QNPGastrointestinal Lesion Detection
QFM, QASCAD Triage & Notification
POKCAD for Lesions (Cancer)
QJIAutomated Glycemic Controller
QIH, LLZ, QKB, OEBMedical Image Management
MYNMedical Image Analyzer
QDQCAD Detection & Diagnosis
MUJRadiation Therapy System
JAKComputed Tomography System
OLZ, OMBElectroencephalograph
SDJCardiovascular Status Indicator

Repo Layout

FileDescription
index.htmlD3.js visualization (standalone, no build required)
clearance_viz.pyMarimo notebook version with Altair charts
top20_product_codes.jsonProcessed data
analysis_summary.mdDetailed analysis notes

Run Locally

Just open index.html in any browser, no server or build step required.

For the Marimo notebook version:

marimo run clearance_viz.py

Built by Innolitics, Medical Device Software Experts.