diff --git a/Cargo.lock b/Cargo.lock
index 620e572d..518a5fef 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1444,6 +1444,7 @@ dependencies = [
"hyper",
"keyvalues-parser",
"log",
+ "lz4_flex",
"rust-embed",
"serde",
"serde_json",
@@ -3104,6 +3105,15 @@ dependencies = [
"hashbrown 0.16.1",
]
+[[package]]
+name = "lz4_flex"
+version = "0.13.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "7ef0d4ed8669f8f8826eb00dc878084aa8f253506c4fd5e8f58f5bce72ddb97e"
+dependencies = [
+ "twox-hash",
+]
+
[[package]]
name = "mach2"
version = "0.4.3"
@@ -5969,6 +5979,12 @@ dependencies = [
"core_maths",
]
+[[package]]
+name = "twox-hash"
+version = "2.1.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9ea3136b675547379c4bd395ca6b938e5ad3c3d20fad76e7fe85f9e0d011419c"
+
[[package]]
name = "typeid"
version = "1.0.3"
@@ -7221,6 +7237,7 @@ dependencies = [
"rust-ini",
"serde",
"serde_json",
+ "serde_json5",
"smol",
"strum",
"walkdir",
diff --git a/Cargo.toml b/Cargo.toml
index d32be292..a730f658 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -23,6 +23,7 @@ regex = "1.12.2"
rust-embed = "8.9.0"
serde = { version = "1", features = ["derive"] }
serde_json = "1.0.145"
+serde_json5 = "0.2.1"
slotmap = "1.1.1"
smol = "2.0.2"
strum = { version = "0.27.2", features = ["derive"] }
diff --git a/dash-frontend/Cargo.toml b/dash-frontend/Cargo.toml
index d138ab4d..6b72aebc 100644
--- a/dash-frontend/Cargo.toml
+++ b/dash-frontend/Cargo.toml
@@ -16,6 +16,7 @@ http-body-util = "0.1.3"
hyper = { version = "1.8.1", features = ["client", "http1", "http2"] }
keyvalues-parser = { git = "https://codeberg.org/CosmicHarper/vdf-rs.git", rev = "fc6dcbea9eb13cacb98dea40063f6f56cde6e145" }
log.workspace = true
+lz4_flex = { version = "0.13.1", features = ["frame"] }
rust-embed.workspace = true
serde = { workspace = true, features = ["rc"] }
serde_json.workspace = true
diff --git a/dash-frontend/assets/bindings.json.lz4 b/dash-frontend/assets/bindings.json.lz4
new file mode 100644
index 00000000..d76de600
Binary files /dev/null and b/dash-frontend/assets/bindings.json.lz4 differ
diff --git a/dash-frontend/assets/gui/tab/settings.xml b/dash-frontend/assets/gui/tab/settings.xml
index 8b7d33a8..ee5a7621 100644
--- a/dash-frontend/assets/gui/tab/settings.xml
+++ b/dash-frontend/assets/gui/tab/settings.xml
@@ -31,6 +31,13 @@
+
+
+
+