From 5c98287eefb96180ee4d9dfdcc67c8baebbac8e1 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 12 Feb 2026 06:56:53 +0000 Subject: [PATCH 1/3] Initial plan From 368b8c6f6a545498c7f94cd37bd06d01b61f2a57 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 12 Feb 2026 07:02:38 +0000 Subject: [PATCH 2/3] Add beautiful static website with interactive launcher comparison table Co-authored-by: diluteoxygen <82773456+diluteoxygen@users.noreply.github.com> --- index.html | 716 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 716 insertions(+) create mode 100644 index.html diff --git a/index.html b/index.html new file mode 100644 index 0000000..19aae14 --- /dev/null +++ b/index.html @@ -0,0 +1,716 @@ + + + + + + Android Launcher Comparison Table + + + + + + +
+

🚀Android Launcher Comparison

+

A comprehensive, community-driven comparison of Android launchers. Find the perfect launcher that checks all your boxes.

+ Last Updated: February 2026 +
+ + +
+ + + + + + + + + + + Showing all launchers +
+ + +
+ + + + + + + + + + + + + + + + + + + + + +
Name Price Ads/Bloat Updates Customisability Drawer KLWP Widget Material You Landscape Source QuickSwitch Android Privacy Download
+
+ + +
+

Legend

+
+
+ + + + + + + + + + From df6cf0140eeeea306e30fdb01d0626e3bcc955ea Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 12 Feb 2026 07:03:29 +0000 Subject: [PATCH 3/3] Address code review: improve variable naming in esc() helper Co-authored-by: diluteoxygen <82773456+diluteoxygen@users.noreply.github.com> --- index.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/index.html b/index.html index 19aae14..9287a5e 100644 --- a/index.html +++ b/index.html @@ -523,10 +523,10 @@ const legend = [ ]; // ── Helpers ───────────────────────────────────────────── -function esc(s) { - var d = document.createElement('div'); - d.appendChild(document.createTextNode(s)); - return d.innerHTML; +function esc(text) { + var tempElement = document.createElement('div'); + tempElement.appendChild(document.createTextNode(text)); + return tempElement.innerHTML; } function priceBadge(p) {