Upload, store, and view medical images in the browser. Built on AWS — secure, serverless, and ready to use.
A full DICOM DICOMWeb pipeline — upload, index, search, and view — hosted entirely on AWS with no servers to manage.
Upload DICOM files directly from the browser via the DICOM STOW-RS standard.
Query studies and series metadata without downloading full files.
View DICOM series in the browser with window/level controls and multi-frame navigation.
Every request is authenticated via AWS Cognito — no unauthenticated access.
Lambda + API Gateway — scales to zero when idle, no EC2 to maintain.
DICOM files in S3, metadata indexed in MongoDB Atlas for fast querying.
Four simple steps from login to viewing your first DICOM series.
Go to app.dicomplatform.com and sign in with your credentials. Contact your administrator if you don't have an account.
Navigate to DICOM Web → Upload. Drag and drop a .dcm file or click to browse. The file is stored securely in S3 and indexed instantly.
Go to DICOM Web to see the study list. Patient, study, and series metadata are shown inline.
Click Retrieve (WADO) and View Series on any series to open the DICOM viewer. Use the slider or mouse wheel to navigate frames and adjust window/level.
User guides for day-to-day tasks and technical references for developers and operators.
👤 User guides
How to upload single or batch DICOM files via STOW-RS from the browser.
Open Portal →Open the DICOM viewer, navigate frames, and adjust window centre and width.
Open Portal →Filter studies and series metadata using the QIDO search interface.
Open Portal →How to sign in for the first time and set a new password when prompted.
Open Portal →⚙️ Technical references
CloudFront → S3 (frontend), API Gateway → Lambda → Flask (backend), MongoDB Atlas, S3 (DICOM storage).
View docs →REST endpoints: GET /stats, GET /qido/studies, POST /stow/instances, GET /wado/series/:uid.
AWS CDK (C#) stacks: DcmPocStack (Cognito, S3, CloudFront) and DcmApiStack (Lambda, API GW, JWT auth).
Secrets (MongoDB connection string) are stored in AWS SSM as SecureString and resolved at Lambda cold start — never in code or CDK outputs.
View docs →Step-by-step: build backend bundle, cdk deploy, build React, S3 sync, CloudFront invalidation.
Common issues: CORS preflight 401, S3 missing bucket, MongoDB not persisting, WADO viewer stuck loading.
View docs →