diff --git a/ParadoxSaveParser.CLI/ParadoxSaveParser.CLI.csproj b/ParadoxSaveParser.CLI/ParadoxSaveParser.CLI.csproj
new file mode 100644
index 0000000..6a8e78d
--- /dev/null
+++ b/ParadoxSaveParser.CLI/ParadoxSaveParser.CLI.csproj
@@ -0,0 +1,19 @@
+
+
+ Exe
+ net8.0
+ latest
+ enable
+ disable
+ true
+ true
+
+
+
+
+
+
+
+
+
+
diff --git a/ParadoxSaveParser.CLI/Program.cs b/ParadoxSaveParser.CLI/Program.cs
new file mode 100644
index 0000000..918313a
--- /dev/null
+++ b/ParadoxSaveParser.CLI/Program.cs
@@ -0,0 +1,108 @@
+global using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Text.Encodings.Web;
+using System.Text.Json;
+using System.Text.Json.Serialization;
+using System.Text.Json.Serialization.Metadata;
+using DTLib.Console;
+using DTLib.Demystifier;
+using DTLib.Filesystem;
+using ParadoxSaveParser.Lib;
+using File = DTLib.Filesystem.File;
+using Directory = DTLib.Filesystem.Directory;
+
+namespace ParadoxSaveParser.CLI;
+
+[JsonSourceGenerationOptions(MaxDepth = 1024, WriteIndented = true)]
+[JsonSerializable(typeof(Dictionary>))]
+[JsonSerializable(typeof(List