diff --git a/Aaru.CommonTypes.csproj b/Aaru.CommonTypes.csproj
index 7553bb4..134cb07 100644
--- a/Aaru.CommonTypes.csproj
+++ b/Aaru.CommonTypes.csproj
@@ -45,6 +45,7 @@
+
diff --git a/AaruMetadata/AaruMetadata.cs b/AaruMetadata/AaruMetadata.cs
index 931a2fd..c9cda83 100644
--- a/AaruMetadata/AaruMetadata.cs
+++ b/AaruMetadata/AaruMetadata.cs
@@ -38,6 +38,7 @@
using System;
using System.Collections.Generic;
+using System.Text.Json.Serialization;
using Schemas;
// ReSharper disable UnusedMember.Global
@@ -45,6 +46,10 @@ using Schemas;
namespace Aaru.CommonTypes.AaruMetadata;
+[JsonSourceGenerationOptions(WriteIndented = true, DefaultIgnoreCondition = JsonIgnoreCondition.WhenWritingNull)]
+[JsonSerializable(typeof(MetadataJson))]
+public partial class MetadataJsonContext : JsonSerializerContext {}
+
public class MetadataJson
{
public Metadata AaruMetadata { get; set; }