From ae9691269981eb0ffdec820fdbb7004fd773766c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Eric=20Dub=C3=A9?= <7225168+KernelDeimos@users.noreply.github.com> Date: Tue, 10 Mar 2026 21:24:13 -0400 Subject: [PATCH] perf(core): very simplistic minifier for homepage (#2630) --- .../src/services/PuterHomepageService.js | 20 ++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/backend/src/services/PuterHomepageService.js b/src/backend/src/services/PuterHomepageService.js index e882ffce0..8c718c96b 100644 --- a/src/backend/src/services/PuterHomepageService.js +++ b/src/backend/src/services/PuterHomepageService.js @@ -283,7 +283,7 @@ export class PuterHomepageService extends BaseService { }, }; await eventService.emit('puter.gui.addons', event); - return ` + let htmlOutput = ` @@ -437,6 +437,24 @@ export class PuterHomepageService extends BaseService { `; + + // A mostly minimal minifier that minifies minimally + // - this is NOT a general-purpose HTML minifier + // - it does not account for
 tags
+        // - it does not minify javascript code
+        htmlOutput = htmlOutput //...
+            // remove regular HTML comments, but keep conditional comments
+            .replace(//g, '')
+            // collapse whitespace between tags
+            .replace(/>\s+<')
+            // collapse runs of whitespace
+            .replace(/\s+/g, ' ')
+            // remove extra space around = in attributes
+            .replace(/\s*=\s*/g, '=')
+            // remove spaces before tag close
+            .replace(/\s+>/g, '>')
+            .trim();
+        return htmlOutput;
     };
 
     generate_error_html ({ message }) {