From ef597bc0583757dc343f4bad1f862e524d47477d Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Mon, 26 Jan 2026 17:14:14 -0500 Subject: [PATCH] feat(launcher): implement visual telemetry dashboard in health config - Added visual progress bars for RAM usage based on native device metadata. - Implemented color-coded status indicators (success/warning/error) for memory usage. - Enhanced layout with animated pulses for heartbeat and sync status. - Added detailed device info display including hostname and IP addresses. --- .../cfg_components/launcher_cfg_health.svelte | 110 ++++++++++++++---- 1 file changed, 86 insertions(+), 24 deletions(-) diff --git a/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_health.svelte b/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_health.svelte index 3c3ff4d7..5b175451 100644 --- a/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_health.svelte +++ b/src/routes/events/[event_id]/(launcher)/cfg_components/launcher_cfg_health.svelte @@ -1,6 +1,26 @@ {#if $ae_loc.is_native} @@ -16,11 +36,11 @@ }} class="btn btn-sm w-full justify-between" > - + {#if $events_loc.launcher.show_section__health} - + {:else} - + {/if} System & Sync Health @@ -35,36 +55,78 @@
- -
- Last Heartbeat: - - {$events_sess.launcher.heartbeat_info.last_timestamp || 'Pending...'} - + +
- Room Sync Status: - - {$events_sess.launcher.sync_stats.cached} / {$events_sess.launcher.sync_stats.total} Files - + +
+
+ CPU Architecture: {$ae_loc.native_device?.meta_json?.arch || '...'} + Load: Healthy +
+
+
+
+
+ + +
+
+ Memory (RAM) + {ram_usage_pct}% Used +
+
+
+
+
+ Free: {$ae_loc.native_device?.meta_json?.free_mem || '...'} / {$ae_loc.native_device?.meta_json?.total_mem || '...'} +
+
+
+ + +
+
+ Last Heartbeat + + {$events_sess.launcher.heartbeat_info.last_timestamp || 'Pending...'} + +
+ +
+ Local File Cache + + {$events_sess.launcher.sync_stats.cached} / {$events_sess.launcher.sync_stats.total} + +
{#if $events_sess.launcher.sync_stats.currently_syncing} - - - Syncing: {$events_sess.launcher.sync_stats.currently_syncing} - +
+
+ +
+ Syncing File... + {$events_sess.launcher.sync_stats.currently_syncing} +
+
+
{/if}
- - {#if $ae_loc.is_native && $ae_loc.native_device} -
-
Host: {$ae_loc.native_device.info_hostname || 'Loading...'}
-
IPs: {$ae_loc.native_device.info_ip_list || '...'}
+ +
+
+ Hostname: + {$ae_loc.native_device.info_hostname || '...'}
- {/if} +
+ IP Addresses: + {$ae_loc.native_device.info_ip_list || '...'} +
+
{/if}