DicomKit 1.0.0

dotnet add package DicomKit --version 1.0.0
                    
NuGet\Install-Package DicomKit -Version 1.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DicomKit" Version="1.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="DicomKit" Version="1.0.0" />
                    
Directory.Packages.props
<PackageReference Include="DicomKit" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add DicomKit --version 1.0.0
                    
#r "nuget: DicomKit, 1.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package DicomKit@1.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=DicomKit&version=1.0.0
                    
Install as a Cake Addin
#tool nuget:?package=DicomKit&version=1.0.0
                    
Install as a Cake Tool

DicomKit

High-throughput, low-allocation, fuzz-resistant DICOM toolkit for .NET 8, .NET 9 and .NET 10.

Free Developer key for development and testing; yearly Pro / Enterprise plans for production. A license key is required since 1.0.0: get the free key in a minute at https://dicomkit.plogic.dev/DeveloperKey.

  • Parser that never throws on bad data: every defect becomes a DicomParseIssue with a placeholder node.
  • Large files: multi-gigabyte objects with memory bounded by the metadata; lazy, per-frame pixel access.
  • Network on System.IO.Pipelines: SCP and SCU for C-ECHO, C-STORE, C-FIND (Patient / Study Root), Modality Worklist, C-MOVE and C-GET, with per-association back-pressure, C-CANCEL and SCP/SCU role selection. DicomQuery builds identifiers; DicomQueryMatcher does PS3.4 matching for your own SCP.
  • Conversion: PDF to Encapsulated PDF, JPEG / PNG / BMP to Secondary Capture (DicomConverter).
  • Batch processing (non-DICOM inputs skipped), attribute mapping (dataset.MapTo<T>()), PS3.15-style anonymization and channel-routed audit logging.

Getting started

using DicomKit;
using DicomKit.IO;
using DicomKit.Network;

using var file = await DicomFile.OpenAsync("image.dcm");     // metadata parsed, pixels untouched
Console.WriteLine(file.Dataset.GetString(DicomTag.PatientName));

await using var client = await DicomClient.ConnectAsync("pacs.example.org", 104,
    new DicomClientOptions { CalledAE = "PACS", StorageSopClasses = [DicomUids.CTImageStorage] });
await client.EchoAsync();
await client.StoreAsync(file);
await client.ReleaseAsync();

C-STORE SCP as a hosted service:

using DicomKit;

builder.Services.AddDicomKit(o => o.Logging.Directory = @"D:\logs\dicom");
builder.Services.AddDicomKitServer(@"D:\incoming", s => { s.Port = 11112; s.AeTitle = "DICOMKIT_SCP"; });

Companion packages

  • DicomKit.Imaging: decode and render pixel data (RLE, JPEG, JPEG-LS, JPEG 2000), windowing and LUTs, PNG / JPEG export, thumbnails.
  • DicomKit.Web: DICOM JSON and XML, streaming multipart, and a QIDO-RS / WADO-RS / STOW-RS client.
  • DicomKit.Web.AspNetCore: DICOMweb server endpoints for ASP.NET Core (app.MapDicomWeb()).

Licensing

A license key is required (since 1.0.0). A free Developer key (all features, development and testing, one machine) takes a minute: https://dicomkit.plogic.dev/DeveloperKey. Production use needs a yearly Pro or Enterprise plan, with no runtime or per-deployment fees.

// ASP.NET Core / generic host: activated online at startup
builder.Services.AddDicomKit(o => o.Licensing.LicenseKey = builder.Configuration["DicomKit:LicenseKey"]);

// any other app: activate once (online), or install a license file (offline)
await DicomKit.Licensing.DicomKitLicense.SetAsync("PLGIC-XXX-XXXXX-XXXXX-XXXXX-XXXXX");
DicomKit.Licensing.DicomKitLicense.SetFromFile("license.lic");

Without a key, licensed operations throw DicomKitLicenseException with a link to get one. A lapsed or expired license never stops running work: it falls back to the free Community feature level. Activation guide, offline (air-gapped) activation and moving machines: https://dicomkit.plogic.dev/Docs#license. Support: support@plogic.dev, replies within 24 hours.

DicomKit is a developer library, not a medical device: validating and certifying a product built with it for diagnostic or clinical use is the integrator's responsibility.

Documentation

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on DicomKit:

Package Downloads
DicomKit.Web

DICOMweb for DicomKit: DICOM JSON Model and Native DICOM Model (XML) serializers, a streaming multipart/related reader and writer with size limits, and an HttpClient-based QIDO-RS / WADO-RS / STOW-RS / UPS-RS client that streams studies as IAsyncEnumerable without buffering whole responses. Requires a license key: free Developer key for development and testing, Pro / Enterprise plans for production (https://dicomkit.plogic.dev).

DicomKit.Imaging

Decode and render DICOM images with DicomKit: native and compressed pixel data (RLE, JPEG baseline / extended / lossless, JPEG-LS, JPEG 2000) in pure managed code, modality and VOI LUTs (window center/width LINEAR, LINEAR_EXACT, SIGMOID, LUT sequences), MONOCHROME1/2, RGB, YBR and PALETTE COLOR, multi-frame, thumbnails, and PNG / JPEG export. Requires a license key: free Developer key for development and testing, Pro / Enterprise plans for production (https://dicomkit.plogic.dev).

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0 171 10/27/2026