diff --git a/frontend/public/json/audit_category_report.md b/frontend/public/json/audit_category_report.md deleted file mode 100644 index 8ced09a4a..000000000 --- a/frontend/public/json/audit_category_report.md +++ /dev/null @@ -1,10 +0,0 @@ -# Audit Report: JSON Categories - -- Total files scanned: 432 -- Files with parse errors: 0 -- Files with questionable/missing categories: 1 - -## Problematic files - -- **versions.json** - - Note: no_category_field diff --git a/frontend/public/json/semantic_audit_report.md b/frontend/public/json/semantic_audit_report.md deleted file mode 100644 index 909c021ef..000000000 --- a/frontend/public/json/semantic_audit_report.md +++ /dev/null @@ -1,1848 +0,0 @@ -# Semantic Audit Report: Category Suggestions - -- Total files scanned: 433 -- Files with parse errors: 0 -- Files flagged as questionable: 225 - -## Flagged files and suggestions - -- **actualbudget.json** - - Current categories: [23] - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 2 Operating Systems (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 23 Finance & Budgeting (score=1) - - Reason: assigned_not_in_top_suggestions - -- **add-netbird-lxc.json** - - Current categories: [1] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 16 IoT & Smart Home (score=2) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Reason: assigned_not_in_top_suggestions - -- **add-tailscale-lxc.json** - - Current categories: [1] - - Suggestion: 16 IoT & Smart Home (score=7) - - Suggestion: 18 MQTT & Messaging (score=6) - - Suggestion: 13 Media & Streaming (score=6) - - Suggestion: 6 Authentication & Security (score=4) - - Suggestion: 4 Network & Firewall (score=4) - - Reason: assigned_not_in_top_suggestions - -- **adventurelog.json** - - Current categories: [24] - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 12 Documents & Notes (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Reason: assigned_not_in_top_suggestions - -- **all-templates.json** - - Current categories: [1] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 12 Documents & Notes (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Suggestion: 15 NVR & Cameras (score=1) - - Reason: assigned_not_in_top_suggestions - -- **alpine.json** - - Current categories: [2] - - Suggestion: 18 MQTT & Messaging (score=2) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 4 Network & Firewall (score=1) - - Suggestion: 17 ZigBee, Z-Wave & Matter (score=1) - - Reason: assigned_not_in_top_suggestions - -- **apache-couchdb.json** - - Current categories: [8] - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Suggestion: 9 Monitoring & Analytics (score=1) - - Reason: assigned_not_in_top_suggestions - -- **apache-tika.json** - - Current categories: [12] - - Suggestion: 11 Files & Downloads (score=3) - - Reason: assigned_not_in_top_suggestions - -- **apt-cacher-ng.json** - - Current categories: [4] - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 18 MQTT & Messaging (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Suggestion: 17 ZigBee, Z-Wave & Matter (score=1) - - Reason: assigned_not_in_top_suggestions - -- **archivebox.json** - - Current categories: [12] - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 14 *Arr Suite (score=1) - - Suggestion: 16 IoT & Smart Home (score=1) - - Suggestion: 13 Media & Streaming (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **archlinux-vm.json** - - Current categories: [2] - - Suggestion: 16 IoT & Smart Home (score=2) - - Suggestion: 14 *Arr Suite (score=1) - - Suggestion: 18 MQTT & Messaging (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **argus.json** - - Current categories: [11] - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Reason: assigned_not_in_top_suggestions - -- **aria2.json** - - Current categories: [11] - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **autobrr.json** - - Current categories: [14] - - Suggestion: 11 Files & Downloads (score=4) - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 10 Dashboards & Frontends (score=2) - - Reason: assigned_not_in_top_suggestions - -- **autocaliweb.json** - - Current categories: [13] - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **babybuddy.json** - - Current categories: [23] - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 10 Dashboards & Frontends (score=2) - - Suggestion: 9 Monitoring & Analytics (score=2) - - Suggestion: 16 IoT & Smart Home (score=1) - - Suggestion: 2 Operating Systems (score=1) - - Reason: assigned_not_in_top_suggestions - -- **baikal.json** - - Current categories: [0] - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **bar-assistant.json** - - Current categories: [24] - - Suggestion: 0 Miscellaneous (score=4) - - Suggestion: 2 Operating Systems (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Reason: assigned_not_in_top_suggestions - -- **bitmagnet.json** - - Current categories: [11] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **booklore.json** - - Current categories: [13] - - Suggestion: 2 Operating Systems (score=2) - - Suggestion: 18 MQTT & Messaging (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **bookstack.json** - - Current categories: [12] - - Suggestion: 10 Dashboards & Frontends (score=4) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 8 Databases (score=1) - - Reason: assigned_not_in_top_suggestions - -- **bytestash.json** - - Current categories: [20] - - Suggestion: 6 Authentication & Security (score=3) - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 23 Finance & Budgeting (score=2) - - Suggestion: 11 Files & Downloads (score=1) - - Reason: assigned_not_in_top_suggestions - -- **caddy.json** - - Current categories: [21] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 19 Automation & Scheduling (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Reason: assigned_not_in_top_suggestions - -- **changedetection.json** - - Current categories: [24] - - Suggestion: 9 Monitoring & Analytics (score=2) - - Suggestion: 23 Finance & Budgeting (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **channels.json** - - Current categories: [13] - - Suggestion: 7 Backup & Recovery (score=4) - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 24 Gaming & Leisure (score=2) - - Suggestion: 0 Miscellaneous (score=2) - - Reason: assigned_not_in_top_suggestions - -- **checkmk.json** - - Current categories: [9] - - Suggestion: 6 Authentication & Security (score=3) - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 9 Monitoring & Analytics (score=2) - - Suggestion: 25 Business & ERP (score=1) - - Reason: assigned_not_in_top_suggestions - -- **cloudflare-ddns.json** - - Current categories: [4] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 11 Files & Downloads (score=2) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 3 Containers & Docker (score=1) - - Reason: assigned_not_in_top_suggestions - -- **cloudreve.json** - - Current categories: [12] - - Suggestion: 11 Files & Downloads (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Reason: assigned_not_in_top_suggestions - -- **cockpit.json** - - Current categories: [10] - - Suggestion: 18 MQTT & Messaging (score=3) - - Suggestion: 21 Webservers & Proxies (score=3) - - Suggestion: 3 Containers & Docker (score=2) - - Suggestion: 9 Monitoring & Analytics (score=2) - - Suggestion: 2 Operating Systems (score=2) - - Reason: assigned_not_in_top_suggestions - -- **configarr.json** - - Current categories: [14] - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 19 Automation & Scheduling (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 16 IoT & Smart Home (score=1) - - Reason: assigned_not_in_top_suggestions - -- **convertx.json** - - Current categories: [9] - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 12 Documents & Notes (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **cosmos.json** - - Current categories: [2, 3] - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 4 Network & Firewall (score=2) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 16 IoT & Smart Home (score=1) - - Reason: assigned_not_in_top_suggestions - -- **crafty-controller.json** - - Current categories: [24] - - Suggestion: 21 Webservers & Proxies (score=4) - - Suggestion: 5 Adblock & DNS (score=3) - - Suggestion: 10 Dashboards & Frontends (score=3) - - Suggestion: 24 Gaming & Leisure (score=3) - - Suggestion: 0 Miscellaneous (score=3) - - Reason: assigned_not_in_top_suggestions - -- **cross-seed.json** - - Current categories: [14] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 18 MQTT & Messaging (score=1) - - Reason: assigned_not_in_top_suggestions - -- **cryptpad.json** - - Current categories: [12] - - Suggestion: 22 Bots & ChatOps (score=2) - - Suggestion: 10 Dashboards & Frontends (score=2) - - Suggestion: 14 *Arr Suite (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 12 Documents & Notes (score=1) - - Reason: assigned_not_in_top_suggestions - -- **daemonsync.json** - - Current categories: [19] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 18 MQTT & Messaging (score=1) - - Reason: assigned_not_in_top_suggestions - -- **debian-13-vm.json** - - Current categories: [2] - - Suggestion: 0 Miscellaneous (score=3) - - Suggestion: 1 Proxmox & Virtualization (score=3) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 24 Gaming & Leisure (score=2) - - Suggestion: 2 Operating Systems (score=2) - - Reason: assigned_not_in_top_suggestions - -- **debian-vm.json** - - Current categories: [2] - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 1 Proxmox & Virtualization (score=2) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 24 Gaming & Leisure (score=1) - - Reason: assigned_not_in_top_suggestions - -- **debian.json** - - Current categories: [2] - - Suggestion: 0 Miscellaneous (score=1) - - Suggestion: 1 Proxmox & Virtualization (score=1) - - Reason: assigned_not_in_top_suggestions - -- **deluge.json** - - Current categories: [11] - - Suggestion: 2 Operating Systems (score=1) - - Suggestion: 1 Proxmox & Virtualization (score=1) - - Reason: assigned_not_in_top_suggestions - -- **discopanel.json** - - Current categories: [24] - - Suggestion: 5 Adblock & DNS (score=4) - - Suggestion: 6 Authentication & Security (score=3) - - Suggestion: 7 Backup & Recovery (score=3) - - Suggestion: 0 Miscellaneous (score=3) - - Suggestion: 21 Webservers & Proxies (score=3) - - Reason: assigned_not_in_top_suggestions - -- **dispatcharr.json** - - Current categories: [14] - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 16 IoT & Smart Home (score=1) - - Suggestion: 9 Monitoring & Analytics (score=1) - - Suggestion: 2 Operating Systems (score=1) - - Reason: assigned_not_in_top_suggestions - -- **docmost.json** - - Current categories: [12] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 8 Databases (score=1) - - Reason: assigned_not_in_top_suggestions - -- **dolibarr.json** - - Current categories: [25] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 25 Business & ERP (score=1) - - Suggestion: 8 Databases (score=1) - - Reason: assigned_not_in_top_suggestions - -- **domain-locker.json** - - Current categories: [9] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 23 Finance & Budgeting (score=1) - - Reason: assigned_not_in_top_suggestions - -- **dotnetaspwebapi.json** - - Current categories: [20] - - Suggestion: 21 Webservers & Proxies (score=3) - - Suggestion: 8 Databases (score=2) - - Suggestion: 18 MQTT & Messaging (score=1) - - Reason: assigned_not_in_top_suggestions - -- **elementsynapse.json** - - Current categories: [4] - - Suggestion: 6 Authentication & Security (score=1) - - Reason: assigned_not_in_top_suggestions - -- **endurain.json** - - Current categories: [24] - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 3 Containers & Docker (score=1) - - Suggestion: 16 IoT & Smart Home (score=1) - - Suggestion: 9 Monitoring & Analytics (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **evcc.json** - - Current categories: [16] - - Suggestion: 4 Network & Firewall (score=2) - - Suggestion: 21 Webservers & Proxies (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 16 IoT & Smart Home (score=1) - - Reason: assigned_not_in_top_suggestions - -- **flaresolverr.json** - - Current categories: [14] - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **fluid-calendar.json** - - Current categories: [19, 0] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 20 AI / Coding & Dev-Tools (score=1) - - Suggestion: 19 Automation & Scheduling (score=1) - - Reason: assigned_not_in_top_suggestions - -- **forgejo.json** - - Current categories: [20] - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **garage.json** - - Current categories: [8] - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 21 Webservers & Proxies (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 8 Databases (score=1) - - Reason: assigned_not_in_top_suggestions - -- **gatus.json** - - Current categories: [9] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 3 Containers & Docker (score=2) - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 20 AI / Coding & Dev-Tools (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Reason: assigned_not_in_top_suggestions - -- **ghostfolio.json** - - Current categories: [23] - - Suggestion: 7 Backup & Recovery (score=3) - - Suggestion: 10 Dashboards & Frontends (score=3) - - Suggestion: 11 Files & Downloads (score=3) - - Suggestion: 9 Monitoring & Analytics (score=2) - - Suggestion: 21 Webservers & Proxies (score=2) - - Reason: assigned_not_in_top_suggestions - -- **gitea.json** - - Current categories: [20] - - Suggestion: 8 Databases (score=3) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 19 Automation & Scheduling (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Reason: assigned_not_in_top_suggestions - -- **glance.json** - - Current categories: [10] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **globaleaks.json** - - Current categories: [0] - - Suggestion: 18 MQTT & Messaging (score=2) - - Suggestion: 6 Authentication & Security (score=1) - - Reason: assigned_not_in_top_suggestions - -- **glpi.json** - - Current categories: [25] - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 9 Monitoring & Analytics (score=1) - - Reason: assigned_not_in_top_suggestions - -- **grist.json** - - Current categories: [12] - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 9 Monitoring & Analytics (score=2) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 8 Databases (score=1) - - Suggestion: 18 MQTT & Messaging (score=1) - - Reason: assigned_not_in_top_suggestions - -- **grocy.json** - - Current categories: [24] - - Suggestion: 5 Adblock & DNS (score=4) - - Suggestion: 6 Authentication & Security (score=4) - - Suggestion: 7 Backup & Recovery (score=4) - - Suggestion: 23 Finance & Budgeting (score=2) - - Suggestion: 16 IoT & Smart Home (score=1) - - Reason: assigned_not_in_top_suggestions - -- **headscale.json** - - Current categories: [4] - - Suggestion: 16 IoT & Smart Home (score=1) - - Reason: assigned_not_in_top_suggestions - -- **healthchecks.json** - - Current categories: [9] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 19 Automation & Scheduling (score=1) - - Suggestion: 22 Bots & ChatOps (score=1) - - Reason: assigned_not_in_top_suggestions - -- **heimdall-dashboard.json** - - Current categories: [10] - - Suggestion: 6 Authentication & Security (score=6) - - Suggestion: 7 Backup & Recovery (score=6) - - Suggestion: 5 Adblock & DNS (score=4) - - Suggestion: 9 Monitoring & Analytics (score=3) - - Suggestion: 21 Webservers & Proxies (score=2) - - Reason: assigned_not_in_top_suggestions - -- **homarr.json** - - Current categories: [10] - - Suggestion: 20 AI / Coding & Dev-Tools (score=2) - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **homebox.json** - - Current categories: [24] - - Suggestion: 12 Documents & Notes (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 23 Finance & Budgeting (score=1) - - Suggestion: 16 IoT & Smart Home (score=1) - - Reason: assigned_not_in_top_suggestions - -- **homepage.json** - - Current categories: [10] - - Suggestion: 20 AI / Coding & Dev-Tools (score=2) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 9 Monitoring & Analytics (score=1) - - Reason: assigned_not_in_top_suggestions - -- **homer.json** - - Current categories: [10] - - Suggestion: 5 Adblock & DNS (score=3) - - Suggestion: 6 Authentication & Security (score=3) - - Suggestion: 7 Backup & Recovery (score=3) - - Suggestion: 18 MQTT & Messaging (score=2) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Reason: assigned_not_in_top_suggestions - -- **hortusfox.json** - - Current categories: [24] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 23 Finance & Budgeting (score=1) - - Reason: assigned_not_in_top_suggestions - -- **immich.json** - - Current categories: [13] - - Suggestion: 7 Backup & Recovery (score=3) - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 15 NVR & Cameras (score=2) - - Reason: assigned_not_in_top_suggestions - -- **inventree.json** - - Current categories: [25] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 16 IoT & Smart Home (score=1) - - Reason: assigned_not_in_top_suggestions - -- **invoiceninja.json** - - Current categories: [25] - - Suggestion: 8 Databases (score=1) - - Suggestion: 23 Finance & Budgeting (score=1) - - Suggestion: 4 Network & Firewall (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **itsm-ng.json** - - Current categories: [25] - - Suggestion: 20 AI / Coding & Dev-Tools (score=1) - - Suggestion: 19 Automation & Scheduling (score=1) - - Suggestion: 16 IoT & Smart Home (score=1) - - Suggestion: 2 Operating Systems (score=1) - - Reason: assigned_not_in_top_suggestions - -- **iventoy.json** - - Current categories: [2] - - Suggestion: 10 Dashboards & Frontends (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Suggestion: 15 NVR & Cameras (score=1) - - Reason: assigned_not_in_top_suggestions - -- **jackett.json** - - Current categories: [11] - - Suggestion: 14 *Arr Suite (score=1) - - Reason: assigned_not_in_top_suggestions - -- **jeedom.json** - - Current categories: [16] - - Suggestion: 0 Miscellaneous (score=3) - - Suggestion: 2 Operating Systems (score=3) - - Suggestion: 19 Automation & Scheduling (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 24 Gaming & Leisure (score=2) - - Reason: assigned_not_in_top_suggestions - -- **jenkins.json** - - Current categories: [20] - - Suggestion: 2 Operating Systems (score=1) - - Reason: assigned_not_in_top_suggestions - -- **jotty.json** - - Current categories: [12] - - Suggestion: 7 Backup & Recovery (score=5) - - Suggestion: 5 Adblock & DNS (score=4) - - Suggestion: 6 Authentication & Security (score=4) - - Suggestion: 12 Documents & Notes (score=2) - - Suggestion: 8 Databases (score=1) - - Reason: assigned_not_in_top_suggestions - -- **jupyternotebook.json** - - Current categories: [20] - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 9 Monitoring & Analytics (score=2) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 12 Documents & Notes (score=1) - - Reason: assigned_not_in_top_suggestions - -- **karakeep.json** - - Current categories: [12] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 12 Documents & Notes (score=2) - - Suggestion: 20 AI / Coding & Dev-Tools (score=1) - - Reason: assigned_not_in_top_suggestions - -- **kasm.json** - - Current categories: [9] - - Suggestion: 0 Miscellaneous (score=3) - - Suggestion: 1 Proxmox & Virtualization (score=3) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 24 Gaming & Leisure (score=2) - - Suggestion: 2 Operating Systems (score=2) - - Reason: assigned_not_in_top_suggestions - -- **kavita.json** - - Current categories: [13] - - Suggestion: 5 Adblock & DNS (score=3) - - Suggestion: 6 Authentication & Security (score=3) - - Suggestion: 7 Backup & Recovery (score=3) - - Reason: assigned_not_in_top_suggestions - -- **kimai.json** - - Current categories: [25] - - Suggestion: 23 Finance & Budgeting (score=2) - - Suggestion: 19 Automation & Scheduling (score=1) - - Suggestion: 8 Databases (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 18 MQTT & Messaging (score=1) - - Reason: assigned_not_in_top_suggestions - -- **koillection.json** - - Current categories: [24] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 23 Finance & Budgeting (score=1) - - Reason: assigned_not_in_top_suggestions - -- **kometa.json** - - Current categories: [13] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 14 *Arr Suite (score=1) - - Suggestion: 19 Automation & Scheduling (score=1) - - Reason: assigned_not_in_top_suggestions - -- **komga.json** - - Current categories: [13] - - Suggestion: 5 Adblock & DNS (score=3) - - Suggestion: 6 Authentication & Security (score=3) - - Suggestion: 7 Backup & Recovery (score=3) - - Suggestion: 14 *Arr Suite (score=1) - - Suggestion: 22 Bots & ChatOps (score=1) - - Reason: assigned_not_in_top_suggestions - -- **kubo.json** - - Current categories: [4] - - Suggestion: 11 Files & Downloads (score=4) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 16 IoT & Smart Home (score=1) - - Suggestion: 13 Media & Streaming (score=1) - - Reason: assigned_not_in_top_suggestions - -- **libretranslate.json** - - Current categories: [0] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **lidarr.json** - - Current categories: [14] - - Suggestion: 11 Files & Downloads (score=4) - - Suggestion: 18 MQTT & Messaging (score=3) - - Suggestion: 2 Operating Systems (score=3) - - Suggestion: 19 Automation & Scheduling (score=2) - - Suggestion: 14 *Arr Suite (score=1) - - Reason: assigned_not_in_top_suggestions - -- **limesurvey.json** - - Current categories: [25] - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 8 Databases (score=1) - - Reason: assigned_not_in_top_suggestions - -- **linkstack.json** - - Current categories: [9] - - Suggestion: 10 Dashboards & Frontends (score=2) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **listmonk.json** - - Current categories: [0] - - Suggestion: 9 Monitoring & Analytics (score=1) - - Reason: assigned_not_in_top_suggestions - -- **lubelogger.json** - - Current categories: [24] - - Suggestion: 18 MQTT & Messaging (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Suggestion: 17 ZigBee, Z-Wave & Matter (score=1) - - Reason: assigned_not_in_top_suggestions - -- **mafl.json** - - Current categories: [10] - - Suggestion: 7 Backup & Recovery (score=3) - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 23 Finance & Budgeting (score=1) - - Reason: assigned_not_in_top_suggestions - -- **magicmirror.json** - - Current categories: [24] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 16 IoT & Smart Home (score=2) - - Suggestion: 0 Miscellaneous (score=2) - - Reason: assigned_not_in_top_suggestions - -- **managemydamnlife.json** - - Current categories: [0] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 19 Automation & Scheduling (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 2 Operating Systems (score=1) - - Reason: assigned_not_in_top_suggestions - -- **mariadb.json** - - Current categories: [8] - - Suggestion: 0 Miscellaneous (score=3) - - Suggestion: 14 *Arr Suite (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 8 Databases (score=1) - - Suggestion: 24 Gaming & Leisure (score=1) - - Reason: assigned_not_in_top_suggestions - -- **mattermost.json** - - Current categories: [25] - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 24 Gaming & Leisure (score=2) - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 2 Operating Systems (score=2) - - Suggestion: 1 Proxmox & Virtualization (score=2) - - Reason: assigned_not_in_top_suggestions - -- **mealie.json** - - Current categories: [13] - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 8 Databases (score=1) - - Reason: assigned_not_in_top_suggestions - -- **medusa.json** - - Current categories: [13] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 15 NVR & Cameras (score=1) - - Reason: assigned_not_in_top_suggestions - -- **meilisearch.json** - - Current categories: [8] - - Suggestion: 0 Miscellaneous (score=3) - - Suggestion: 18 MQTT & Messaging (score=2) - - Suggestion: 9 Monitoring & Analytics (score=2) - - Suggestion: 21 Webservers & Proxies (score=2) - - Suggestion: 17 ZigBee, Z-Wave & Matter (score=2) - - Reason: assigned_not_in_top_suggestions - -- **meshcentral.json** - - Current categories: [4] - - Suggestion: 16 IoT & Smart Home (score=3) - - Suggestion: 18 MQTT & Messaging (score=2) - - Suggestion: 2 Operating Systems (score=2) - - Suggestion: 21 Webservers & Proxies (score=2) - - Suggestion: 17 ZigBee, Z-Wave & Matter (score=2) - - Reason: assigned_not_in_top_suggestions - -- **metabase.json** - - Current categories: [9] - - Suggestion: 7 Backup & Recovery (score=5) - - Suggestion: 5 Adblock & DNS (score=3) - - Suggestion: 6 Authentication & Security (score=3) - - Suggestion: 9 Monitoring & Analytics (score=2) - - Suggestion: 25 Business & ERP (score=1) - - Reason: assigned_not_in_top_suggestions - -- **metube.json** - - Current categories: [11] - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **microcode.json** - - Current categories: [1] - - Suggestion: 6 Authentication & Security (score=3) - - Suggestion: 4 Network & Firewall (score=3) - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Reason: assigned_not_in_top_suggestions - -- **minio.json** - - Current categories: [8] - - Suggestion: 9 Monitoring & Analytics (score=4) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **monica.json** - - Current categories: [24] - - Suggestion: 6 Authentication & Security (score=5) - - Suggestion: 7 Backup & Recovery (score=5) - - Suggestion: 5 Adblock & DNS (score=4) - - Suggestion: 23 Finance & Budgeting (score=1) - - Suggestion: 16 IoT & Smart Home (score=1) - - Reason: assigned_not_in_top_suggestions - -- **myip.json** - - Current categories: [4] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Reason: assigned_not_in_top_suggestions - -- **myspeed.json** - - Current categories: [4] - - Suggestion: 20 AI / Coding & Dev-Tools (score=2) - - Suggestion: 18 MQTT & Messaging (score=2) - - Suggestion: 14 *Arr Suite (score=1) - - Suggestion: 3 Containers & Docker (score=1) - - Suggestion: 24 Gaming & Leisure (score=1) - - Reason: assigned_not_in_top_suggestions - -- **n8n.json** - - Current categories: [16] - - Suggestion: 19 Automation & Scheduling (score=4) - - Suggestion: 7 Backup & Recovery (score=3) - - Suggestion: 9 Monitoring & Analytics (score=3) - - Suggestion: 20 AI / Coding & Dev-Tools (score=2) - - Suggestion: 16 IoT & Smart Home (score=2) - - Reason: assigned_not_in_top_suggestions - -- **navidrome.json** - - Current categories: [13] - - Suggestion: 10 Dashboards & Frontends (score=3) - - Suggestion: 18 MQTT & Messaging (score=3) - - Suggestion: 16 IoT & Smart Home (score=2) - - Suggestion: 14 *Arr Suite (score=1) - - Suggestion: 5 Adblock & DNS (score=1) - - Reason: assigned_not_in_top_suggestions - -- **netbox.json** - - Current categories: [4] - - Suggestion: 5 Adblock & DNS (score=3) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 9 Monitoring & Analytics (score=2) - - Suggestion: 15 NVR & Cameras (score=2) - - Suggestion: 4 Network & Firewall (score=2) - - Reason: assigned_not_in_top_suggestions - -- **netdata.json** - - Current categories: [1] - - Suggestion: 9 Monitoring & Analytics (score=4) - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 24 Gaming & Leisure (score=1) - - Suggestion: 16 IoT & Smart Home (score=1) - - Suggestion: 13 Media & Streaming (score=1) - - Reason: assigned_not_in_top_suggestions - -- **nextcloud-vm.json** - - Current categories: [2] - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 11 Files & Downloads (score=2) - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Reason: assigned_not_in_top_suggestions - -- **nextcloudpi.json** - - Current categories: [2] - - Suggestion: 7 Backup & Recovery (score=4) - - Suggestion: 24 Gaming & Leisure (score=2) - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 9 Monitoring & Analytics (score=2) - - Suggestion: 2 Operating Systems (score=2) - - Reason: assigned_not_in_top_suggestions - -- **nextpvr.json** - - Current categories: [13] - - Suggestion: 19 Automation & Scheduling (score=1) - - Suggestion: 3 Containers & Docker (score=1) - - Suggestion: 15 NVR & Cameras (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **nic-offloading-fix.json** - - Current categories: [1] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 15 NVR & Cameras (score=2) - - Suggestion: 4 Network & Firewall (score=2) - - Suggestion: 1 Proxmox & Virtualization (score=1) - - Reason: assigned_not_in_top_suggestions - -- **nocodb.json** - - Current categories: [25] - - Suggestion: 7 Backup & Recovery (score=7) - - Suggestion: 9 Monitoring & Analytics (score=7) - - Suggestion: 8 Databases (score=2) - - Suggestion: 18 MQTT & Messaging (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **node-red.json** - - Current categories: [16] - - Suggestion: 22 Bots & ChatOps (score=2) - - Suggestion: 10 Dashboards & Frontends (score=2) - - Suggestion: 20 AI / Coding & Dev-Tools (score=1) - - Suggestion: 8 Databases (score=1) - - Suggestion: 16 IoT & Smart Home (score=1) - - Reason: assigned_not_in_top_suggestions - -- **notifiarr.json** - - Current categories: [14] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 9 Monitoring & Analytics (score=1) - - Reason: assigned_not_in_top_suggestions - -- **ntfy.json** - - Current categories: [19] - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 3 Containers & Docker (score=1) - - Suggestion: 24 Gaming & Leisure (score=1) - - Reason: assigned_not_in_top_suggestions - -- **octoprint.json** - - Current categories: [24] - - Suggestion: 16 IoT & Smart Home (score=2) - - Suggestion: 21 Webservers & Proxies (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Reason: assigned_not_in_top_suggestions - -- **olivetin.json** - - Current categories: [10] - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 18 MQTT & Messaging (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Suggestion: 17 ZigBee, Z-Wave & Matter (score=1) - - Reason: assigned_not_in_top_suggestions - -- **ombi.json** - - Current categories: [13] - - Suggestion: 14 *Arr Suite (score=1) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 13 Media & Streaming (score=1) - - Reason: assigned_not_in_top_suggestions - -- **omv.json** - - Current categories: [2] - - Suggestion: 7 Backup & Recovery (score=11) - - Suggestion: 9 Monitoring & Analytics (score=7) - - Suggestion: 18 MQTT & Messaging (score=5) - - Suggestion: 2 Operating Systems (score=4) - - Suggestion: 4 Network & Firewall (score=2) - - Reason: assigned_not_in_top_suggestions - -- **openproject.json** - - Current categories: [25] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 19 Automation & Scheduling (score=1) - - Suggestion: 18 MQTT & Messaging (score=1) - - Reason: assigned_not_in_top_suggestions - -- **openwrt-vm.json** - - Current categories: [4, 2] - - Suggestion: 16 IoT & Smart Home (score=2) - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 19 Automation & Scheduling (score=1) - - Reason: assigned_not_in_top_suggestions - -- **openziti-controller.json** - - Current categories: [4] - - Suggestion: 6 Authentication & Security (score=3) - - Suggestion: 3 Containers & Docker (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 16 IoT & Smart Home (score=1) - - Suggestion: 13 Media & Streaming (score=1) - - Reason: assigned_not_in_top_suggestions - -- **openziti-tunnel.json** - - Current categories: [4] - - Suggestion: 6 Authentication & Security (score=3) - - Suggestion: 3 Containers & Docker (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 16 IoT & Smart Home (score=1) - - Suggestion: 13 Media & Streaming (score=1) - - Reason: assigned_not_in_top_suggestions - -- **outline.json** - - Current categories: [12] - - Suggestion: 6 Authentication & Security (score=3) - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 8 Databases (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Reason: assigned_not_in_top_suggestions - -- **owncast.json** - - Current categories: [13] - - Suggestion: 14 *Arr Suite (score=1) - - Suggestion: 15 NVR & Cameras (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **owncloud-vm.json** - - Current categories: [2] - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 11 Files & Downloads (score=2) - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Reason: assigned_not_in_top_suggestions - -- **pairdrop.json** - - Current categories: [11] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 11 Files & Downloads (score=2) - - Reason: assigned_not_in_top_suggestions - -- **palmr.json** - - Current categories: [11] - - Suggestion: 6 Authentication & Security (score=4) - - Suggestion: 7 Backup & Recovery (score=3) - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 11 Files & Downloads (score=2) - - Suggestion: 9 Monitoring & Analytics (score=2) - - Reason: assigned_not_in_top_suggestions - -- **pangolin.json** - - Current categories: [21] - - Suggestion: 5 Adblock & DNS (score=3) - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Reason: assigned_not_in_top_suggestions - -- **part-db.json** - - Current categories: [25] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 8 Databases (score=1) - - Reason: assigned_not_in_top_suggestions - -- **patchmon.json** - - Current categories: [9] - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 13 Media & Streaming (score=1) - - Suggestion: 9 Monitoring & Analytics (score=1) - - Reason: assigned_not_in_top_suggestions - -- **paymenter.json** - - Current categories: [21] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Reason: assigned_not_in_top_suggestions - -- **pbs-microcode.json** - - Current categories: [1] - - Suggestion: 6 Authentication & Security (score=4) - - Suggestion: 7 Backup & Recovery (score=4) - - Suggestion: 0 Miscellaneous (score=3) - - Suggestion: 4 Network & Firewall (score=3) - - Suggestion: 5 Adblock & DNS (score=2) - - Reason: assigned_not_in_top_suggestions - -- **peanut.json** - - Current categories: [4] - - Suggestion: 16 IoT & Smart Home (score=2) - - Suggestion: 13 Media & Streaming (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 9 Monitoring & Analytics (score=1) - - Suggestion: 15 NVR & Cameras (score=1) - - Reason: assigned_not_in_top_suggestions - -- **pelican-panel.json** - - Current categories: [24] - - Suggestion: 21 Webservers & Proxies (score=4) - - Suggestion: 18 MQTT & Messaging (score=3) - - Suggestion: 20 AI / Coding & Dev-Tools (score=2) - - Suggestion: 24 Gaming & Leisure (score=2) - - Suggestion: 8 Databases (score=1) - - Reason: assigned_not_in_top_suggestions - -- **pelican-wings.json** - - Current categories: [24] - - Suggestion: 20 AI / Coding & Dev-Tools (score=2) - - Suggestion: 16 IoT & Smart Home (score=2) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 8 Databases (score=1) - - Suggestion: 24 Gaming & Leisure (score=1) - - Reason: assigned_not_in_top_suggestions - -- **pf2etools.json** - - Current categories: [24] - - Suggestion: 3 Containers & Docker (score=2) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **photoprism.json** - - Current categories: [13] - - Suggestion: 20 AI / Coding & Dev-Tools (score=1) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 3 Containers & Docker (score=1) - - Reason: assigned_not_in_top_suggestions - -- **phpipam.json** - - Current categories: [4] - - Suggestion: 12 Documents & Notes (score=2) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **pialert.json** - - Current categories: [4] - - Suggestion: 16 IoT & Smart Home (score=3) - - Suggestion: 13 Media & Streaming (score=3) - - Reason: assigned_not_in_top_suggestions - -- **pihole-exporter.json** - - Current categories: [9] - - Suggestion: 5 Adblock & DNS (score=1) - - Reason: assigned_not_in_top_suggestions - -- **planka.json** - - Current categories: [12] - - Suggestion: 19 Automation & Scheduling (score=2) - - Suggestion: 10 Dashboards & Frontends (score=2) - - Suggestion: 8 Databases (score=1) - - Suggestion: 12 Documents & Notes (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Reason: assigned_not_in_top_suggestions - -- **plant-it.json** - - Current categories: [24] - - Suggestion: 9 Monitoring & Analytics (score=2) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 8 Databases (score=1) - - Suggestion: 12 Documents & Notes (score=1) - - Suggestion: 23 Finance & Budgeting (score=1) - - Reason: assigned_not_in_top_suggestions - -- **pocketbase.json** - - Current categories: [8] - - Suggestion: 10 Dashboards & Frontends (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 8 Databases (score=1) - - Reason: assigned_not_in_top_suggestions - -- **privatebin.json** - - Current categories: [12] - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 9 Monitoring & Analytics (score=2) - - Suggestion: 3 Containers & Docker (score=1) - - Reason: assigned_not_in_top_suggestions - -- **projectsend.json** - - Current categories: [12] - - Suggestion: 8 Databases (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Reason: assigned_not_in_top_suggestions - -- **prometheus-alertmanager.json** - - Current categories: [9] - - Suggestion: 24 Gaming & Leisure (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Suggestion: 1 Proxmox & Virtualization (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **prometheus-paperless-ngx-exporter.json** - - Current categories: [9] - - Suggestion: 11 Files & Downloads (score=3) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 12 Documents & Notes (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **pterodactyl-wings.json** - - Current categories: [24] - - Suggestion: 16 IoT & Smart Home (score=2) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 8 Databases (score=1) - - Suggestion: 24 Gaming & Leisure (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **pulse.json** - - Current categories: [9] - - Suggestion: 21 Webservers & Proxies (score=5) - - Suggestion: 1 Proxmox & Virtualization (score=4) - - Suggestion: 6 Authentication & Security (score=3) - - Suggestion: 4 Network & Firewall (score=3) - - Suggestion: 5 Adblock & DNS (score=1) - - Reason: assigned_not_in_top_suggestions - -- **radarr.json** - - Current categories: [14] - - Suggestion: 11 Files & Downloads (score=4) - - Suggestion: 18 MQTT & Messaging (score=3) - - Suggestion: 2 Operating Systems (score=3) - - Suggestion: 19 Automation & Scheduling (score=2) - - Suggestion: 14 *Arr Suite (score=1) - - Reason: assigned_not_in_top_suggestions - -- **radicale.json** - - Current categories: [0] - - Suggestion: 19 Automation & Scheduling (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 24 Gaming & Leisure (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **rdtclient.json** - - Current categories: [11] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **reactive-resume.json** - - Current categories: [12] - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **readeck.json** - - Current categories: [12] - - Suggestion: 0 Miscellaneous (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **reitti.json** - - Current categories: [21] - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 24 Gaming & Leisure (score=1) - - Suggestion: 9 Monitoring & Analytics (score=1) - - Suggestion: 2 Operating Systems (score=1) - - Reason: assigned_not_in_top_suggestions - -- **resiliosync.json** - - Current categories: [11] - - Suggestion: 7 Backup & Recovery (score=3) - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 11 Files & Downloads (score=2) - - Suggestion: 13 Media & Streaming (score=2) - - Reason: assigned_not_in_top_suggestions - -- **revealjs.json** - - Current categories: [12] - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **rustdeskserver.json** - - Current categories: [21] - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 24 Gaming & Leisure (score=1) - - Suggestion: 16 IoT & Smart Home (score=1) - - Suggestion: 18 MQTT & Messaging (score=1) - - Reason: assigned_not_in_top_suggestions - -- **scaling-governor.json** - - Current categories: [1] - - Suggestion: 18 MQTT & Messaging (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 9 Monitoring & Analytics (score=1) - - Suggestion: 2 Operating Systems (score=1) - - Suggestion: 1 Proxmox & Virtualization (score=1) - - Reason: assigned_not_in_top_suggestions - -- **scanopy.json** - - Current categories: [9] - - Suggestion: 4 Network & Firewall (score=3) - - Suggestion: 21 Webservers & Proxies (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Reason: assigned_not_in_top_suggestions - -- **searxng.json** - - Current categories: [0] - - Suggestion: 18 MQTT & Messaging (score=1) - - Reason: assigned_not_in_top_suggestions - -- **seelf.json** - - Current categories: [4] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 3 Containers & Docker (score=1) - - Suggestion: 8 Databases (score=1) - - Reason: assigned_not_in_top_suggestions - -- **semaphore.json** - - Current categories: [19] - - Suggestion: 14 *Arr Suite (score=1) - - Suggestion: 2 Operating Systems (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **signoz.json** - - Current categories: [9] - - Suggestion: 10 Dashboards & Frontends (score=2) - - Reason: assigned_not_in_top_suggestions - -- **sonarqube.json** - - Current categories: [20, 19] - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 4 Network & Firewall (score=1) - - Reason: assigned_not_in_top_suggestions - -- **sonarr.json** - - Current categories: [14] - - Suggestion: 11 Files & Downloads (score=4) - - Suggestion: 18 MQTT & Messaging (score=3) - - Suggestion: 2 Operating Systems (score=3) - - Suggestion: 19 Automation & Scheduling (score=2) - - Suggestion: 14 *Arr Suite (score=1) - - Reason: assigned_not_in_top_suggestions - -- **speedtest-tracker.json** - - Current categories: [4] - - Suggestion: 20 AI / Coding & Dev-Tools (score=1) - - Suggestion: 3 Containers & Docker (score=1) - - Suggestion: 8 Databases (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **spoolman.json** - - Current categories: [24] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 23 Finance & Budgeting (score=1) - - Reason: assigned_not_in_top_suggestions - -- **sqlserver2022.json** - - Current categories: [8] - - Suggestion: 18 MQTT & Messaging (score=2) - - Reason: assigned_not_in_top_suggestions - -- **stirling-pdf.json** - - Current categories: [12] - - Suggestion: 19 Automation & Scheduling (score=1) - - Suggestion: 25 Business & ERP (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 18 MQTT & Messaging (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **streamlink-webui.json** - - Current categories: [11] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 18 MQTT & Messaging (score=1) - - Reason: assigned_not_in_top_suggestions - -- **stylus.json** - - Current categories: [4] - - Suggestion: 6 Authentication & Security (score=4) - - Suggestion: 7 Backup & Recovery (score=3) - - Suggestion: 18 MQTT & Messaging (score=3) - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 0 Miscellaneous (score=2) - - Reason: assigned_not_in_top_suggestions - -- **suwayomi-server.json** - - Current categories: [13] - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **swizzin.json** - - Current categories: [13] - - Suggestion: 24 Gaming & Leisure (score=3) - - Suggestion: 0 Miscellaneous (score=3) - - Suggestion: 21 Webservers & Proxies (score=3) - - Suggestion: 14 *Arr Suite (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Reason: assigned_not_in_top_suggestions - -- **syncthing.json** - - Current categories: [12] - - Suggestion: 13 Media & Streaming (score=3) - - Suggestion: 11 Files & Downloads (score=2) - - Suggestion: 16 IoT & Smart Home (score=2) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 3 Containers & Docker (score=1) - - Reason: assigned_not_in_top_suggestions - -- **tandoor.json** - - Current categories: [24] - - Suggestion: 20 AI / Coding & Dev-Tools (score=2) - - Suggestion: 2 Operating Systems (score=1) - - Reason: assigned_not_in_top_suggestions - -- **tasmocompiler.json** - - Current categories: [16] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **tautulli.json** - - Current categories: [13] - - Suggestion: 14 *Arr Suite (score=4) - - Suggestion: 5 Adblock & DNS (score=4) - - Suggestion: 6 Authentication & Security (score=4) - - Suggestion: 7 Backup & Recovery (score=4) - - Suggestion: 13 Media & Streaming (score=4) - - Reason: assigned_not_in_top_suggestions - -- **telegraf.json** - - Current categories: [9] - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 8 Databases (score=1) - - Suggestion: 16 IoT & Smart Home (score=1) - - Suggestion: 9 Monitoring & Analytics (score=1) - - Suggestion: 4 Network & Firewall (score=1) - - Reason: assigned_not_in_top_suggestions - -- **the-lounge.json** - - Current categories: [22] - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **threadfin.json** - - Current categories: [13] - - Suggestion: 18 MQTT & Messaging (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Suggestion: 17 ZigBee, Z-Wave & Matter (score=1) - - Reason: assigned_not_in_top_suggestions - -- **traccar.json** - - Current categories: [0] - - Suggestion: 16 IoT & Smart Home (score=1) - - Suggestion: 13 Media & Streaming (score=1) - - Reason: assigned_not_in_top_suggestions - -- **tracktor.json** - - Current categories: [9] - - Suggestion: 20 AI / Coding & Dev-Tools (score=2) - - Suggestion: 21 Webservers & Proxies (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Reason: assigned_not_in_top_suggestions - -- **traefik.json** - - Current categories: [21] - - Suggestion: 2 Operating Systems (score=2) - - Suggestion: 3 Containers & Docker (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Suggestion: 9 Monitoring & Analytics (score=1) - - Suggestion: 1 Proxmox & Virtualization (score=1) - - Reason: assigned_not_in_top_suggestions - -- **transmission.json** - - Current categories: [11] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 8 Databases (score=1) - - Suggestion: 4 Network & Firewall (score=1) - - Reason: assigned_not_in_top_suggestions - -- **tududi.json** - - Current categories: [12] - - Suggestion: 10 Dashboards & Frontends (score=3) - - Suggestion: 8 Databases (score=1) - - Reason: assigned_not_in_top_suggestions - -- **tunarr.json** - - Current categories: [13] - - Suggestion: 14 *Arr Suite (score=1) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 3 Containers & Docker (score=1) - - Reason: assigned_not_in_top_suggestions - -- **turnkey.json** - - Current categories: [2] - - Suggestion: 18 MQTT & Messaging (score=2) - - Suggestion: 14 *Arr Suite (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Suggestion: 2 Operating Systems (score=1) - - Reason: assigned_not_in_top_suggestions - -- **twingate-connector.json** - - Current categories: [4] - - Suggestion: 5 Adblock & DNS (score=5) - - Suggestion: 6 Authentication & Security (score=5) - - Suggestion: 7 Backup & Recovery (score=3) - - Suggestion: 15 NVR & Cameras (score=2) - - Suggestion: 4 Network & Firewall (score=2) - - Reason: assigned_not_in_top_suggestions - -- **ubuntu.json** - - Current categories: [2] - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 18 MQTT & Messaging (score=1) - - Suggestion: 17 ZigBee, Z-Wave & Matter (score=1) - - Reason: assigned_not_in_top_suggestions - -- **ubuntu2204-vm.json** - - Current categories: [2] - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 24 Gaming & Leisure (score=1) - - Suggestion: 18 MQTT & Messaging (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **ubuntu2404-vm.json** - - Current categories: [2] - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 24 Gaming & Leisure (score=1) - - Suggestion: 18 MQTT & Messaging (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **ubuntu2504-vm.json** - - Current categories: [2] - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 24 Gaming & Leisure (score=1) - - Suggestion: 18 MQTT & Messaging (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **uhf.json** - - Current categories: [13] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 19 Automation & Scheduling (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **umbrel-os-vm.json** - - Current categories: [2] - - Suggestion: 5 Adblock & DNS (score=6) - - Suggestion: 7 Backup & Recovery (score=6) - - Suggestion: 6 Authentication & Security (score=5) - - Suggestion: 13 Media & Streaming (score=3) - - Suggestion: 10 Dashboards & Frontends (score=2) - - Reason: assigned_not_in_top_suggestions - -- **umlautadaptarr.json** - - Current categories: [14] - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **unmanic.json** - - Current categories: [0] - - Suggestion: 11 Files & Downloads (score=5) - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 18 MQTT & Messaging (score=2) - - Reason: assigned_not_in_top_suggestions - -- **update-lxcs.json** - - Current categories: [1] - - Suggestion: 2 Operating Systems (score=3) - - Suggestion: 3 Containers & Docker (score=2) - - Suggestion: 18 MQTT & Messaging (score=1) - - Suggestion: 13 Media & Streaming (score=1) - - Suggestion: 1 Proxmox & Virtualization (score=1) - - Reason: assigned_not_in_top_suggestions - -- **upsnap.json** - - Current categories: [4] - - Suggestion: 10 Dashboards & Frontends (score=3) - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 4 Network & Firewall (score=2) - - Suggestion: 7 Backup & Recovery (score=1) - - Reason: assigned_not_in_top_suggestions - -- **verdaccio.json** - - Current categories: [20] - - Suggestion: 6 Authentication & Security (score=4) - - Suggestion: 5 Adblock & DNS (score=3) - - Suggestion: 7 Backup & Recovery (score=3) - - Suggestion: 10 Dashboards & Frontends (score=2) - - Suggestion: 21 Webservers & Proxies (score=2) - - Reason: assigned_not_in_top_suggestions - -- **versions.json** - - Reason: no_category_field - -- **victoriametrics.json** - - Current categories: [8] - - Suggestion: 9 Monitoring & Analytics (score=3) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 2 Operating Systems (score=1) - - Reason: assigned_not_in_top_suggestions - -- **vikunja.json** - - Current categories: [12] - - Suggestion: 7 Backup & Recovery (score=3) - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 19 Automation & Scheduling (score=2) - - Suggestion: 0 Miscellaneous (score=2) - - Reason: assigned_not_in_top_suggestions - -- **wallabag.json** - - Current categories: [12] - - Suggestion: 22 Bots & ChatOps (score=1) - - Suggestion: 8 Databases (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions - -- **wanderer.json** - - Current categories: [24] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Suggestion: 8 Databases (score=1) - - Reason: assigned_not_in_top_suggestions - -- **warracker.json** - - Current categories: [12] - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 10 Dashboards & Frontends (score=2) - - Suggestion: 9 Monitoring & Analytics (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Reason: assigned_not_in_top_suggestions - -- **watcharr.json** - - Current categories: [13] - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 10 Dashboards & Frontends (score=1) - - Reason: assigned_not_in_top_suggestions - -- **wavelog.json** - - Current categories: [24] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 8 Databases (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Reason: assigned_not_in_top_suggestions - -- **wazuh.json** - - Current categories: [9] - - Suggestion: 0 Miscellaneous (score=3) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 24 Gaming & Leisure (score=2) - - Suggestion: 9 Monitoring & Analytics (score=2) - - Suggestion: 4 Network & Firewall (score=2) - - Reason: assigned_not_in_top_suggestions - -- **web-check.json** - - Current categories: [4] - - Suggestion: 21 Webservers & Proxies (score=7) - - Suggestion: 3 Containers & Docker (score=2) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 0 Miscellaneous (score=1) - - Suggestion: 4 Network & Firewall (score=1) - - Reason: assigned_not_in_top_suggestions - -- **webmin.json** - - Current categories: [1] - - Suggestion: 10 Dashboards & Frontends (score=2) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 19 Automation & Scheduling (score=1) - - Suggestion: 11 Files & Downloads (score=1) - - Suggestion: 15 NVR & Cameras (score=1) - - Reason: assigned_not_in_top_suggestions - -- **wger.json** - - Current categories: [24] - - Suggestion: 5 Adblock & DNS (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 7 Backup & Recovery (score=2) - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 21 Webservers & Proxies (score=2) - - Reason: assigned_not_in_top_suggestions - -- **wikijs.json** - - Current categories: [12] - - Suggestion: 10 Dashboards & Frontends (score=3) - - Suggestion: 16 IoT & Smart Home (score=2) - - Suggestion: 7 Backup & Recovery (score=1) - - Suggestion: 22 Bots & ChatOps (score=1) - - Suggestion: 3 Containers & Docker (score=1) - - Reason: assigned_not_in_top_suggestions - -- **wordpress.json** - - Current categories: [21] - - Suggestion: 0 Miscellaneous (score=2) - - Suggestion: 14 *Arr Suite (score=1) - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 6 Authentication & Security (score=1) - - Suggestion: 7 Backup & Recovery (score=1) - - Reason: assigned_not_in_top_suggestions - -- **zammad.json** - - Current categories: [25] - - Suggestion: 18 MQTT & Messaging (score=2) - - Suggestion: 0 Miscellaneous (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Suggestion: 17 ZigBee, Z-Wave & Matter (score=1) - - Reason: assigned_not_in_top_suggestions - -- **zerotier-one.json** - - Current categories: [4] - - Suggestion: 5 Adblock & DNS (score=3) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 15 NVR & Cameras (score=2) - - Suggestion: 4 Network & Firewall (score=2) - - Suggestion: 7 Backup & Recovery (score=1) - - Reason: assigned_not_in_top_suggestions - -- **zoraxy.json** - - Current categories: [21] - - Suggestion: 5 Adblock & DNS (score=1) - - Suggestion: 15 NVR & Cameras (score=1) - - Suggestion: 4 Network & Firewall (score=1) - - Reason: assigned_not_in_top_suggestions - -- **zot-registry.json** - - Current categories: [3] - - Suggestion: 20 AI / Coding & Dev-Tools (score=2) - - Suggestion: 6 Authentication & Security (score=2) - - Suggestion: 9 Monitoring & Analytics (score=1) - - Suggestion: 4 Network & Firewall (score=1) - - Suggestion: 21 Webservers & Proxies (score=1) - - Reason: assigned_not_in_top_suggestions diff --git a/scripts/audit_json_categories.py b/scripts/audit_json_categories.py deleted file mode 100755 index 5feeff8df..000000000 --- a/scripts/audit_json_categories.py +++ /dev/null @@ -1,160 +0,0 @@ -#!/usr/bin/env python3 -import json -from pathlib import Path - -ROOT = Path(__file__).resolve().parents[1] -JSON_DIR = ROOT / 'frontend' / 'public' / 'json' -METADATA_FILE = JSON_DIR / 'metadata.json' -REPORT_MD = JSON_DIR / 'audit_category_report.md' -REPORT_JSON = JSON_DIR / 'audit_category_report.json' - - -def load_metadata(): - with METADATA_FILE.open() as f: - md = json.load(f) - cats = {} - for c in md.get('categories', []): - try: - cid = int(c.get('id')) - except Exception: - continue - cats[cid] = c - - # Also create name->id map (lowercased) - name_map = {c.get('name','').lower(): int(c.get('id')) for c in md.get('categories', []) if 'name' in c and 'id' in c} - return cats, name_map - - -def normalize_value(v): - if v is None: - return None - if isinstance(v, (int, float)): - return int(v) - if isinstance(v, str): - s = v.strip() - if s.isdigit(): - return int(s) - return s.lower() - return v - - -def check_file(p, cats_by_id, name_map): - try: - j = json.loads(p.read_text()) - except Exception as e: - return {'file': str(p.name), 'error': f'json_parse_error: {e}'} - - found = [] - notes = [] - - # look for common keys - keys_to_check = ['category_id', 'category', 'categories'] - for key in keys_to_check: - if key in j: - val = j[key] - if isinstance(val, list): - for item in val: - nv = normalize_value(item) - found.append((key, nv)) - else: - nv = normalize_value(val) - found.append((key, nv)) - - # also check top-level keys that might indicate category - if not found: - for alt in ['tags', 'type']: - if alt in j: - val = j[alt] - if isinstance(val, list): - for item in val: - found.append((alt, normalize_value(item))) - else: - found.append((alt, normalize_value(val))) - - if not found: - notes.append('no_category_field') - return {'file': str(p.name), 'found': [], 'notes': notes} - - mapped = [] - for key, val in found: - if isinstance(val, int): - if val in cats_by_id: - mapped.append({'key': key, 'value': val, 'mapped_to': cats_by_id[val]['name']}) - else: - mapped.append({'key': key, 'value': val, 'mapped_to': None}) - notes.append(f'unknown_category_id:{val}') - elif isinstance(val, str): - # try name map - if val in name_map: - cid = name_map[val] - mapped.append({'key': key, 'value': val, 'mapped_to': cats_by_id[cid]['name']}) - else: - mapped.append({'key': key, 'value': val, 'mapped_to': None}) - notes.append(f'unknown_category_name:{val}') - else: - mapped.append({'key': key, 'value': val, 'mapped_to': None}) - notes.append(f'unhandled_value_type:{type(val)}') - - return {'file': str(p.name), 'found': mapped, 'notes': notes} - - -def main(): - cats_by_id, name_map = load_metadata() - report = {'summary': {'total_files': 0, 'errors': 0, 'questionable': 0}, 'files': []} - - for p in sorted(JSON_DIR.glob('*.json')): - if p.name == METADATA_FILE.name: - continue - report['summary']['total_files'] += 1 - res = check_file(p, cats_by_id, name_map) - if 'error' in res: - report['summary']['errors'] += 1 - report['files'].append(res) - continue - # determine if questionable: any mapped_to is None or notes - questionable = False - for f in res.get('found', []): - if f.get('mapped_to') is None: - questionable = True - if res.get('notes'): - questionable = True - if questionable: - report['summary']['questionable'] += 1 - report['files'].append(res) - - # write JSON report - REPORT_JSON.write_text(json.dumps(report, indent=2)) - - # write MD summary - lines = [] - lines.append('# Audit Report: JSON Categories') - lines.append('') - lines.append(f"- Total files scanned: {report['summary']['total_files']}") - lines.append(f"- Files with parse errors: {report['summary']['errors']}") - lines.append(f"- Files with questionable/missing categories: {report['summary']['questionable']}") - lines.append('') - lines.append('## Problematic files') - lines.append('') - for f in report['files']: - if f.get('notes') or any(x.get('mapped_to') is None for x in f.get('found', [])): - lines.append(f"- **{f['file']}**") - if 'error' in f: - lines.append(f" - Error: {f['error']}") - if f.get('found'): - for found in f['found']: - lines.append(f" - Field `{found['key']}` => `{found['value']}` mapped_to: `{found.get('mapped_to')}`") - if f.get('notes'): - for n in f['notes']: - lines.append(f" - Note: {n}") - lines.append('') - - REPORT_MD.write_text('\n'.join(lines)) - print('Audit complete:') - print(f" Total: {report['summary']['total_files']}") - print(f" Questionable: {report['summary']['questionable']}") - print(f" Errors: {report['summary']['errors']}") - print(f"Wrote: {REPORT_JSON} and {REPORT_MD}") - - -if __name__ == '__main__': - main() diff --git a/scripts/audit_json_category_semantic.py b/scripts/audit_json_category_semantic.py deleted file mode 100755 index b9deb76b8..000000000 --- a/scripts/audit_json_category_semantic.py +++ /dev/null @@ -1,180 +0,0 @@ -#!/usr/bin/env python3 -import json -from pathlib import Path -import re -from collections import Counter - -ROOT = Path(__file__).resolve().parents[1] -JSON_DIR = ROOT / 'frontend' / 'public' / 'json' -METADATA_FILE = JSON_DIR / 'metadata.json' -REPORT_JSON = JSON_DIR / 'semantic_audit_report.json' -REPORT_MD = JSON_DIR / 'semantic_audit_report.md' - -STOPWORDS = set(["the","and","of","in","a","to","with","for","on","is","an","by","as","or","all","tools","solutions","manage","management","system","systems","service","services"]) - - -def tokens(text): - if not text: - return [] - text = text.lower() - text = re.sub(r"[^a-z0-9]+", " ", text) - toks = [t for t in text.split() if t and t not in STOPWORDS and len(t) > 1] - return toks - - -def load_categories(): - md = json.loads(METADATA_FILE.read_text()) - cats = {} - for c in md.get('categories', []): - try: - cid = int(c.get('id')) - except Exception: - continue - name = c.get('name','') - desc = c.get('description','') - kt = set(tokens(name) + tokens(desc)) - # also add raw name token - cats[cid] = {'id': cid, 'name': name, 'desc': desc, 'keywords': kt} - return cats - - -def score_text_against_category(text_tokens, cat_keywords): - if not text_tokens or not cat_keywords: - return 0 - cnt = 0 - for t in text_tokens: - if t in cat_keywords: - cnt += 1 - # simple score: count - return cnt - - -def analyze_file(p, cats): - try: - obj = json.loads(p.read_text()) - except Exception as e: - return {'file': p.name, 'error': f'parse_error: {e}'} - - # if the JSON is not an object (e.g., array of versions), we cannot determine category - if not isinstance(obj, dict): - return {'file': p.name, 'found': [], 'questionable': True, 'reasons': ['no_category_field']} - - # gather text - parts = [] - for k in ['name','description','slug','type','documentation','website']: - v = obj.get(k) - if isinstance(v, list): - parts.extend([str(x) for x in v if x]) - elif v: - parts.append(str(v)) - # include install script path and notes - for k in ['script','install_methods','notes','tags']: - v = obj.get(k) - if not v: - continue - if isinstance(v, list): - for item in v: - parts.append(json.dumps(item) if isinstance(item, (dict,list)) else str(item)) - elif isinstance(v, dict): - parts.append(json.dumps(v)) - else: - parts.append(str(v)) - - text = " ".join(parts) - tks = tokens(text) - if not tks: - return {'file': p.name, 'found': [], 'notes': ['no_text_to_analyze']} - - scores = [] - for cid, c in cats.items(): - sc = score_text_against_category(tks, c['keywords']) - if sc > 0: - scores.append({'id': cid, 'name': c['name'], 'score': sc}) - scores = sorted(scores, key=lambda x: (-x['score'], x['name'])) - - # determine current categories - current = [] - raw = obj.get('categories') or obj.get('category') - if isinstance(raw, list): - current = raw - elif raw is not None: - current = [raw] - - # normalize to ints where possible - normalized_current = [] - for v in current: - try: - normalized_current.append(int(v)) - except Exception: - # maybe it's a name; try to match by name - for cid,c in cats.items(): - if isinstance(v,str) and v.strip().lower() == c['name'].lower(): - normalized_current.append(cid) - break - - # decide if questionable - questionable = False - reasons = [] - if not normalized_current: - questionable = True - reasons.append('no_category_assigned') - else: - # if none of current in top 3 suggestions and top suggestion has score>0 - top_ids = [s['id'] for s in scores[:3]] - if scores and all(cid not in top_ids for cid in normalized_current): - questionable = True - reasons.append('assigned_not_in_top_suggestions') - - return {'file': p.name, 'current': normalized_current, 'suggestions': scores[:5], 'questionable': questionable, 'reasons': reasons} - - -def main(): - cats = load_categories() - report = {'summary': {'total': 0, 'questionable': 0, 'errors': 0}, 'files': []} - for p in sorted(JSON_DIR.glob('*.json')): - if p.name == METADATA_FILE.name: - continue - report['summary']['total'] += 1 - res = analyze_file(p, cats) - if 'error' in res: - report['summary']['errors'] += 1 - if res.get('questionable'): - report['summary']['questionable'] += 1 - report['files'].append(res) - - REPORT_JSON.write_text(json.dumps(report, indent=2)) - - lines = [] - lines.append('# Semantic Audit Report: Category Suggestions') - lines.append('') - lines.append(f"- Total files scanned: {report['summary']['total']}") - lines.append(f"- Files with parse errors: {report['summary']['errors']}") - lines.append(f"- Files flagged as questionable: {report['summary']['questionable']}") - lines.append('') - lines.append('## Flagged files and suggestions') - lines.append('') - for f in report['files']: - if f.get('questionable') or f.get('error'): - lines.append(f"- **{f['file']}**") - if f.get('error'): - lines.append(f" - Error: {f['error']}") - if f.get('current'): - lines.append(f" - Current categories: {f['current']}") - if f.get('suggestions'): - for s in f['suggestions']: - lines.append(f" - Suggestion: {s['id']} {s['name']} (score={s['score']})") - if f.get('reasons'): - for r in f['reasons']: - lines.append(f" - Reason: {r}") - lines.append('') - - REPORT_MD.write_text('\n'.join(lines)) - print('Semantic audit complete:') - print(f" Total: {report['summary']['total']}") - print(f" Questionable: {report['summary']['questionable']}") - print(f" Errors: {report['summary']['errors']}") - print(f"Wrote: {REPORT_JSON} and {REPORT_MD}") - - -if __name__ == '__main__': - main()