<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Alfian Lensun</title>
    <description>The latest articles on DEV Community by Alfian Lensun (@alfianlensun).</description>
    <link>https://dev.to/alfianlensun</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3866862%2Fb55b1e87-9deb-4776-8b09-fd53b590a481.png</url>
      <title>DEV Community: Alfian Lensun</title>
      <link>https://dev.to/alfianlensun</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/alfianlensun"/>
    <language>en</language>
    <item>
      <title>From Metadata and Images to PACS: A Lightweight DICOM Service in Rust</title>
      <dc:creator>Alfian Lensun</dc:creator>
      <pubDate>Wed, 08 Apr 2026 03:45:28 +0000</pubDate>
      <link>https://dev.to/alfianlensun/from-metadata-and-images-to-pacs-a-lightweight-dicom-service-in-rust-1bmo</link>
      <guid>https://dev.to/alfianlensun/from-metadata-and-images-to-pacs-a-lightweight-dicom-service-in-rust-1bmo</guid>
      <description>&lt;p&gt;I built a lightweight DICOM routing service in Rust that connects images and metadata to a PACS server in a simple and reliable workflow.&lt;/p&gt;

&lt;p&gt;I started this project after seeing that some hospitals still lack adequate PACS systems or face challenges connecting imaging devices to their existing infrastructure. In some environments, imaging devices cannot connect directly to PACS, or the system setup is too complex to maintain.&lt;/p&gt;

&lt;p&gt;In addition, some hospitals are required to support interoperability with other healthcare systems, which often requires sending medical imaging data in the DICOM format. However, not all systems are ready to produce or transmit DICOM data directly.&lt;/p&gt;

&lt;p&gt;To address these challenges, I developed a lightweight service that retrieves metadata from an external API using an HTTP GET request, downloads images from object storage, generates DICOM files, and forwards them directly to a PACS system.&lt;/p&gt;

&lt;p&gt;I chose Rust because of its performance, reliability, and memory safety, which are important for backend services handling medical imaging workflows.&lt;/p&gt;

&lt;p&gt;Key components in this project:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Rust-based backend service&lt;/li&gt;
&lt;li&gt;Metadata retrieval via HTTP API (GET)&lt;/li&gt;
&lt;li&gt;Image retrieval from MinIO / S3-compatible storage&lt;/li&gt;
&lt;li&gt;DICOM file generation&lt;/li&gt;
&lt;li&gt;PACS forwarding using configurable AE Title, host, and port&lt;/li&gt;
&lt;li&gt;Containerized deployment with Docker&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The main goal was to build a simple, efficient, and production-ready workflow that can help hospitals meet interoperability requirements while keeping deployment and maintenance simple.&lt;/p&gt;

&lt;p&gt;You can view and try the container here:&lt;br&gt;
&lt;a href="https://hub.docker.com/r/alfianlensundev/img2dicom-forwarder" rel="noopener noreferrer"&gt;https://hub.docker.com/r/alfianlensundev/img2dicom-forwarder&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I'm sharing this project to learn from the community and see how others design similar workflows for medical imaging and system integration.&lt;/p&gt;

</description>
      <category>rust</category>
      <category>imagetodicom</category>
      <category>minio</category>
      <category>lightweight</category>
    </item>
  </channel>
</rss>
