A newer version of the Gradio SDK is available: 6.20.0
title: X-Ray Anything
emoji: π©»
colorFrom: indigo
colorTo: blue
sdk: gradio
sdk_version: 6.17.3
app_file: app.py
pinned: false
license: other
short_description: Photograph any object β watch it ride into a 3D scanner
tags:
- track:wood
- achievement:offbrand
- achievement:offgrid
models:
- black-forest-labs/FLUX.2-klein-9B
- Qwen/Qwen2.5-VL-3B-Instruct
π©» X-Ray Anything
Photograph any object. Watch it ride the patient table into a 3D MRI machine. It comes back out as a radiograph of its insides.
Drop in a photo of your keyboard, your coffee machine, your graphics card β the scanner produces an X-ray view of your actual object: translucent shell, glowing internals, silhouette preserved.
How the scan works
- Qwen2.5-VL-3B looks at your photo, identifies the object, and lists the internal components it should contain
- FLUX.2-klein-9B edits your photo β same silhouette, same position β into an X-ray radiograph revealing those internals (4-step rectified flow, sub-second on the GPU)
- The whole experience plays out in a 3D scanner built with Three.js: your photo slides into the bore on the patient table, scan beams sweep, the machine hums, and the radiograph slides back out
Everything fits the small-model constraint: 9B + 3B, both far under 32B.
Built on gr.Server
No default Gradio UI anywhere β the frontend is a single hand-written page
(Three.js scene, WebAudio scanner hum, boot sequence) served by Gradio 6's
gr.Server, with the model behind a @app.api endpoint and called via
@gradio/client. Queueing and concurrency still come from Gradio under the
hood.
frontend/index.html the 3D radiology console (no build step, CDN ESM)
app.py gr.Server: /xray endpoint + static routes
Run the UI locally without a GPU: XRAY_MOCK=1 python app.py replays a
cached scan so the full animation is testable on a laptop.
π¨ Radiographs are an AI's imagination of the inside, made for wonder β not engineering documentation.
Build Small Hackathon 2026 Β· Thousand Token Wood track Β· Barath
Submission
- Demo video: https://youtu.be/kVkX3Dg5gOg
- Social post: https://x.com/barathishere/status/2066882090054930704
Badges claimed
| Badge | Why X-Ray Anything qualifies |
|---|---|
π² Thousand Token Wood (track:wood) |
A whimsical, joyful toy: photograph anything, watch it ride into a 3D scanner and come back as a radiograph. |
π¨ Off Brand (achievement:offbrand) |
No default Gradio UI β a hand-written Three.js radiology console (3D scanner, WebAudio hum, boot sequence) served via gr.Server. |
π Off the Grid (achievement:offgrid) |
Both models run in-Space on ZeroGPU; no external AI API is called. |