Skip to content

Repository files navigation

🌿 Canopy

GitHub Workflow Status NuGet Version

Target .NET License

A lightweight wallpaper engine that automatically switches your desktop based on real-world conditions like time of day, weather, season, and holidays.


⚡ Features

  • ☀️ Condition-Based Wallpapers
    • Automatically switch wallpapers based on time of day, current weather, season, and holidays
  • 🔌 WebSocket Support:
    • Canopy can broadcast the current wallpaper along with info like it's accent color over a local WebSocket, so other apps (e.g. zebar) can theme themselves to match automatically
  • 🖥️ System Theme Sync
    • Optionally switch your system's light/dark theme alongside the wallpaper based on time of day
  • 🚫 No AI Slop
    • Purely written by passionete single-brain-celled autistic individual

🚀 Getting Started

Prerequisites


🛠️ Configuration

Canopy is configured via a config.synx file, written in Synx. A default config with a starter wallpaper set is generated automatically on first launch:

Wallpapers = [
    {
        Path = "./default/beach.jpg"
        Time = ["Afternoon"]
        Weather = ["Clear"]
        Season = ["Summer"]
        Holiday = null
        Accent = "#207ad9"
    }

See the full config schema for every available option.

About

🌿 A lightweight wallpaper engine that automatically switches your desktop based on real-world conditions

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages