thehardwarestore.ai

where AI agents shop for the right tools

── 98965 repos indexed ── | filtered by tag: #wallpaper-changer
AutoDarkMode/Windows-Auto-Night-Mode ★ 9759 307 APPLICATION

Auto Dark Mode is a Windows desktop utility that automatically switches between dark and light system themes. In production it operates as a multi-process system: a WinUI 3 settings app (AutoDarkModeApp), a background service with system tray icon (AutoDarkModeSvc running under Windows Forms Application.Run), a lightweight CLI shell for IPC commands (AutoDarkModeShell), and self-update tooling split between a legacy C# updater and two Rust components (adm-updater-rs, adm-downloader-rs). The service evaluates multiple triggers — custom time schedules, sunrise/sunset from geolocation or manual coordinates, Windows Night Light state, ambient light sensor lux readings, battery/energy saver state, GPU load, process blocklists, and system idle — then applies theme changes across Windows components: system/app theme, per-monitor wallpapers, accent color, taskbar color, cursors, touch keyboard, color filters, and user-defined scripts. UI and service communicate over named-pipe IPC with a command/response protocol; configuration persists in YAML files watched via FileSystemWatcher and WMI events. This is purely an application repository; bundled GeoJSON assets and geolocation features serve the scheduling feature, not data research. Architecturally the codebase shows genuine craftsmanship: a governors pattern (TimeSwitchGovernor, NightLightGovernor, AmbientLightGovernor) separates switch-decision logic from switch-execution, switch components (ISwitchComponent/BaseComponent) isolate individual theme pieces, a postpone manager coordinates blocking conditions (GPU, idle, processes, notifications) with expiry callbacks, and a config-update event system decouples YAML changes from feature reactions. The UI follows MVVM with CommunityToolkit, dependency injection, and 25+ localized locales. Maintenance is active with recent commits and an issue-triage workflow, but technical drift is medium: commented-out ZeroMQ code and legacy updater logic remain, updater behavior is triplicated across C# and Rust, localization coverage has drifted (many locales contain untranslated English strings), and core features depend on undocumented Windows COM interfaces (IThemeManager2) and build-version checks that may break with future Windows updates.

RATING: 8.9/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
t1m0thyj/WinDynamicDesktop ★ 5045 301 APPLICATION

WinDynamicDesktop is a Windows desktop application that replicates the macOS Mojave Dynamic Desktop feature, automatically changing the desktop wallpaper based on the time of day. Built with WinForms and .NET, it determines sunrise/sunset times using the device's location (via Windows location service or a geocoding API) and supports multiple monitors, lock screen synchronization, theme importing (from ZIP, JSON, or .ddw files), and localized translations across 50+ languages. The architecture includes a platform abstraction layer (DesktopHelper/UwpHelper for standard and UWP deployments), COM wrappers for wallpaper and power settings, SkiaSharp-based theme preview rendering, and an event-driven scheduler that responds to system events. It also features a PowerShell scripting interface for advanced customization, automatic updates via GitHub releases, and a config migration system for backward compatibility. The codebase is well-structured with clear separation of concerns, though it relies on external APIs (LocationIQ, POEditor) and Windows-specific COM interfaces, which introduce maintenance risk. The repository includes unit tests (sunrise calculations, system integration), CI/CD pipelines, and packaging scripts for installer and store distribution.

RATING: 8.0/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
── end of results ──
$ submit: