Fyron Curate
Fyron Curate is a local image cohort review app for quickly separating useful images from rejected ones. It is designed for folder-based screening before downstream analysis, figure preparation, model QA, or manual dataset cleanup.
Curate is a beta application. It runs locally through Docker Compose, stores review metadata in PostgreSQL, and keeps original uploaded files unchanged. The default export workflow creates a clean folder with accepted images instead of deleting source data.
Gallery View For Easy Selection
Curate is built around a fast gallery view. After adding a cohort, images appear as compact thumbnails that can be reviewed by mouse or keyboard. Click a thumbnail to toggle accepted/rejected state, use search and filters to narrow the view, and adjust thumbnail size or spacing when you need either a dense overview or a closer visual check.
DICOM folders are shown as study cards with one thumbnail per series. This makes it possible to select the relevant series first, then export a clean folder that keeps the selected DICOM source files traceable.
Install
Install Fyron with the Curate extra:
uv add "fyron[curate]"Docker Desktop or another Docker Compose runtime must be installed and running.
Start Curate
Start the local app with the Fyron CLI:
fyron curateBy default, this starts the Curate frontend, backend, and PostgreSQL services with Docker Compose. Open the app at:
http://localhost:5174/Useful startup options:
fyron curate --open
fyron curate --no-build
fyron curate --foreground
fyron curate --app-dir apps/image-curatorUse --open to launch the browser automatically. Use --foreground when you want to see Docker logs directly in the terminal.
Review Workflow
Curate starts on the cohort dashboard.
- Create a cohort.
- Give the cohort a name.
- Drop a folder of images into the dialog.
- Review the gallery.
- Click images to mark them accepted or rejected.
- Create a clean folder when review is finished.
The clean export preserves relative folder structure and copies only accepted images. For accepted DICOM series thumbnails, Curate also copies the original selected series files into dicom_series/ inside the export. The uploaded cohort remains immutable, so accidental rejects can be corrected before export.
Data You Can Drop Into Curate
Curate accepts ordinary image folders and DICOM folders.
| Format | Use |
|---|---|
| PNG | preferred for CT/MRI preview slices and screenshots |
| JPEG/JPG | camera images, compressed clinical exports, thumbnails |
| WebP | modern web image exports |
| GIF | simple animated or static image previews where browser-supported |
| BMP | legacy image exports |
| TIFF/TIF | supported when browser previewing is available |
| DICOM | study folders; readable series are shown as selectable thumbnails |
Unknown files are ignored during indexing. For best results with ordinary images, use PNG or JPEG folders.
Curate preserves relative paths from the dropped folder. This means nested folders such as patient_001/axial.png and patient_001/coronal.png remain traceable in the clean export.
CT, MRI, X-Ray, And Topogram Data
Curate can read DICOM directories directly. When you drop a DICOM folder, the app groups files by study and series, then shows each study as a card with one thumbnail per series. Selecting a series uses the same accepted/rejected review state as the image gallery.
The direct DICOM reader is intended for common uncompressed CT, MRI, X-ray, scout, and topogram exports. If a vendor export uses compressed transfer syntaxes that the browser preview service cannot decode, prepare PNG previews first with Fyron's preview command:
uv add "fyron[visualization,curate]"
fyron dataset-curate-previews \
--input-dir ct_or_mri_exports/ \
--output-dir curate_previews/Then drop curate_previews/ into Curate.
For three-dimensional CT/MRI volumes and DICOM series, the preview command produces:
- middle axial PNG
- middle coronal PNG
- middle sagittal PNG
Two-dimensional images such as X-rays, scout views, and topograms produce one PNG preview.
The preview command also writes a manifest.csv so you can trace each generated PNG back to the source file or DICOM series.
Persistent Data
The Docker Compose app uses persistent volumes for:
| Volume | Content |
|---|---|
| PostgreSQL | cohorts, image metadata, review state, settings, exports |
| uploads | immutable uploaded cohort files |
| exports | clean accepted-image folders |
Stopping the containers does not delete reviewed cohorts. Removing Docker volumes will remove local Curate data.