diff --git a/README.md b/README.md index fcbd31c..00569a3 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # widgetsack

- widgetsack demo layout: clock, CPU/GPU gauges, a countdown timer, memory/VRAM bars, up/down network graphs, an audio spectrum, a now-playing card, a stock ticker, an analog clock, and Home Assistant temperature/climate/light tiles + widgetsack demo layout: clock, CPU/GPU gauges, a countdown timer, memory/VRAM bars, up/down network graphs, an audio spectrum, a now-playing card, a stock ticker, an analog clock, Home Assistant temperature/climate/light tiles, and a DDC monitor input switcher

[**👉 installer download for the latest release**](https://github.com/gyng/widgetsack/releases/latest) @@ -30,14 +30,16 @@ docs regenerate from the code with `npm run gen:docs`. - **Widgets:** gauges, bars, sparklines, text, digital + analog clocks, a month calendar, a per-core CPU grid, a GPU panel, a battery indicator, a disk/storage panel, a top-process monitor, an audio spectrum, a now-playing card, a weather card, a stock ticker, an application fence or zone, a web - iframe, action buttons, and Home Assistant tiles — sensor- or [formula-driven](docs/templating.md) + iframe, action buttons, a DDC monitor input switcher, an audio output switcher, and Home Assistant + tiles — sensor- or [formula-driven](docs/templating.md) and fully restylable ([reference](docs/widgets.md)). - **Sensors:** CPU (total/per-core/freq), memory + swap, network, disks (+ I/O), uptime, battery, the busiest process (by CPU/RAM/disk/GPU), and NVIDIA GPU (NVML) — demand-gated, so only what's on screen is sampled. - **Now playing:** Windows media via GSMTC — Spotify, foobar2000, browsers, and more ([support table](https://github.com/ModernFlyouts-Community/ModernFlyouts/blob/main/docs/GSMTC-Support-And-Popular-Apps.md)). -- **Integrations:** Home Assistant (live states + light/climate controls), MQTT, stock quotes, and +- **Integrations:** Home Assistant (live states + light/climate/fan/cover/lock/scene/switch/media + controls), MQTT, stock quotes, and weather (Open-Meteo, keyless). - **Overlay:** transparent, click-through, always-on-top, one per monitor — per-widget click-through still lets buttons/controls catch clicks. Single-instance, optional autostart. diff --git a/client/gallery/Gallery.tsx b/client/gallery/Gallery.tsx index 524c2b4..98147aa 100644 --- a/client/gallery/Gallery.tsx +++ b/client/gallery/Gallery.tsx @@ -74,7 +74,8 @@ const OVERRIDES: Record = { { id: 'hdmi', name: 'HDMI Display' } ], default_audio_output: 'spk', - get_audio_volume: { level: 0.62, muted: false } + get_audio_volume: { level: 0.62, muted: false }, + // The Monitor Switch sources its rows from list_monitor_inputs (DDC/CI VCP 0x60), not the hub — + // canned a representative 4K monitor (current = HDMI 1; DP/HDMI×2/USB-C supported) so it renders. + list_monitor_inputs: [ + { + gdi: '\\\\.\\DISPLAY1', + friendly: 'Dell U2723QE', + primary: true, + current_input: 0x11, // HDMI 1 + supported: [0x0f, 0x11, 0x12, 0x15], // DisplayPort 1, HDMI 1, HDMI 2, USB-C + width: 2560, + height: 1440, + refresh_hz: 144 + } + ] }; // eslint-disable-next-line @typescript-eslint/no-explicit-any (window as any).__TAURI_INTERNALS__ = { diff --git a/docs/img/demo.png b/docs/img/demo.png index 950026f..7441d8b 100644 Binary files a/docs/img/demo.png and b/docs/img/demo.png differ diff --git a/docs/img/studio.png b/docs/img/studio.png index 2b856ce..16869e3 100644 Binary files a/docs/img/studio.png and b/docs/img/studio.png differ diff --git a/docs/img/widgets/agenda.png b/docs/img/widgets/agenda.png index f60d44c..fd962b5 100644 Binary files a/docs/img/widgets/agenda.png and b/docs/img/widgets/agenda.png differ diff --git a/docs/img/widgets/airquality.png b/docs/img/widgets/airquality.png index 3591679..5ab93b4 100644 Binary files a/docs/img/widgets/airquality.png and b/docs/img/widgets/airquality.png differ diff --git a/docs/img/widgets/autotheme.png b/docs/img/widgets/autotheme.png index 187594c..08d4bb5 100644 Binary files a/docs/img/widgets/autotheme.png and b/docs/img/widgets/autotheme.png differ diff --git a/docs/img/widgets/gpu.png b/docs/img/widgets/gpu.png index f12077a..7f14eeb 100644 Binary files a/docs/img/widgets/gpu.png and b/docs/img/widgets/gpu.png differ diff --git a/docs/img/widgets/ha.binary_sensor.png b/docs/img/widgets/ha.binary_sensor.png new file mode 100644 index 0000000..3f67688 Binary files /dev/null and b/docs/img/widgets/ha.binary_sensor.png differ diff --git a/docs/img/widgets/ha.climate.png b/docs/img/widgets/ha.climate.png index 092d22e..27aa437 100644 Binary files a/docs/img/widgets/ha.climate.png and b/docs/img/widgets/ha.climate.png differ diff --git a/docs/img/widgets/ha.cover.png b/docs/img/widgets/ha.cover.png new file mode 100644 index 0000000..fddb0f7 Binary files /dev/null and b/docs/img/widgets/ha.cover.png differ diff --git a/docs/img/widgets/ha.fan.png b/docs/img/widgets/ha.fan.png new file mode 100644 index 0000000..07f1bfa Binary files /dev/null and b/docs/img/widgets/ha.fan.png differ diff --git a/docs/img/widgets/ha.input.png b/docs/img/widgets/ha.input.png new file mode 100644 index 0000000..92334f7 Binary files /dev/null and b/docs/img/widgets/ha.input.png differ diff --git a/docs/img/widgets/ha.light.png b/docs/img/widgets/ha.light.png index a1af153..bb827f5 100644 Binary files a/docs/img/widgets/ha.light.png and b/docs/img/widgets/ha.light.png differ diff --git a/docs/img/widgets/ha.lock.png b/docs/img/widgets/ha.lock.png new file mode 100644 index 0000000..f709b76 Binary files /dev/null and b/docs/img/widgets/ha.lock.png differ diff --git a/docs/img/widgets/ha.media_player.png b/docs/img/widgets/ha.media_player.png new file mode 100644 index 0000000..8184305 Binary files /dev/null and b/docs/img/widgets/ha.media_player.png differ diff --git a/docs/img/widgets/ha.scene.png b/docs/img/widgets/ha.scene.png new file mode 100644 index 0000000..a5c8691 Binary files /dev/null and b/docs/img/widgets/ha.scene.png differ diff --git a/docs/img/widgets/ha.sensor.png b/docs/img/widgets/ha.sensor.png index 23d9af2..969aebb 100644 Binary files a/docs/img/widgets/ha.sensor.png and b/docs/img/widgets/ha.sensor.png differ diff --git a/docs/img/widgets/ha.switch.png b/docs/img/widgets/ha.switch.png new file mode 100644 index 0000000..3b73fe6 Binary files /dev/null and b/docs/img/widgets/ha.switch.png differ diff --git a/docs/img/widgets/monitorswitch.png b/docs/img/widgets/monitorswitch.png new file mode 100644 index 0000000..199b9bd Binary files /dev/null and b/docs/img/widgets/monitorswitch.png differ diff --git a/docs/img/widgets/nowplaying.png b/docs/img/widgets/nowplaying.png index 0b4df47..c55fb5e 100644 Binary files a/docs/img/widgets/nowplaying.png and b/docs/img/widgets/nowplaying.png differ diff --git a/docs/img/widgets/rss.png b/docs/img/widgets/rss.png index 532c8bc..85ae54a 100644 Binary files a/docs/img/widgets/rss.png and b/docs/img/widgets/rss.png differ diff --git a/docs/img/widgets/sunmoon.png b/docs/img/widgets/sunmoon.png index 1afa0a5..ba7bb01 100644 Binary files a/docs/img/widgets/sunmoon.png and b/docs/img/widgets/sunmoon.png differ diff --git a/docs/img/widgets/ticker.png b/docs/img/widgets/ticker.png index 7b082a5..65e9996 100644 Binary files a/docs/img/widgets/ticker.png and b/docs/img/widgets/ticker.png differ diff --git a/docs/img/widgets/weather.png b/docs/img/widgets/weather.png index e8ce89d..bb13672 100644 Binary files a/docs/img/widgets/weather.png and b/docs/img/widgets/weather.png differ