wallflow 0.5.0

Elegant wallpaper management with smooth transitions, powered by awww
Documentation
# wallflow Configuration
# Directory paths (XDG Base Directory compliant)
paths:
  local: "Wallpapers"
  downloads: "Wallpapers/downloads"

# Transition animations, used only when awww is used as a backend
transition:
  type: ["fade", "wipe", "outer", "random"] # Single type or array
  duration: 5 # Seconds
  fps: 30 # Frame rate

# Automated rotation settings
timer:
  interval: 30 # Minutes between changes
  randomize: "5m" # Add timing randomization
  start_delay: "1m" # Delay after boot

# Wallpaper sources
# Available: local, wallhaven, picsum, apod, bing, reddit, earthview, unsplash
sources:
  default: "local"

  # Local wallpaper collection
  local:
    recursive: true # Search subdirectories
    formats: ["jpg", "jpeg", "png", "webp"]

  # Wallhaven - curated wallpapers with search
  # CLI: wallflow wallhaven [search terms]
  wallhaven:
    api_key: "" # Optional, required for NSFW content
    resolution: "2560x1440" # Or leave empty for auto-detect
    quality: "large" # large, medium, small
    purity: ["sfw"] # sfw, sketchy, nsfw
    categories: ["general"] # general, anime, people (or search terms like "nature", "night")

  # Picsum - random placeholder photos
  # CLI: wallflow picsum
  picsum:
    width: 2560 # Or leave empty for auto-detect
    height: 1440

  # NASA Astronomy Picture of the Day
  # CLI: wallflow apod
  apod:
    url: "https://api.nasa.gov/planetary/apod"
    api_key: "DEMO_KEY" # Replace with your NASA API key for higher rate limits

  # Unsplash - high-resolution photos
  # CLI: wallflow unsplash [search topics]
  unsplash:
    access_key: "" # Required - get one at https://unsplash.com/developers

  # Reddit - wallpapers from subreddits
  # CLI: wallflow reddit [subreddit]
  reddit:
    subreddit: "wallpapers" # Default subreddit (can also use "wallpapers+earthporn")

  # Note: bing and earthview require no configuration
  # CLI: wallflow bing      - Bing Photo of the Day
  # CLI: wallflow earthview - Google Earth satellite imagery

# Cleanup management
cleanup:
  keep_count: 10 # Number of downloads to retain
  auto_cleanup: true

# Color extraction and theming
# wallflow extracts colors from wallpapers and renders templates for your apps
colors:
  enabled: true
  engine: "native"          # k-means++ color extraction
  contrast_ratio: 3.0       # 1.5 (low contrast) to 4.5 (WCAG AAA)
  background_intensity: 0.6 # 0.3 (subtle) to 0.9 (intense)
  # prefer_dark: null       # null = auto-detect, true = force dark, false = force light

# Desktop integration
integration:
  reload_apps: true # Send signals to terminals (kitty, ghostty) to reload colors

# Logging
logging:
  enabled: true
  level: "info" # debug, info, warn, error
  file: "${HOME}/.local/share/wallflow/wallflow.log" # Optional file output
  timestamp: true

# Advanced settings
advanced:
  user_agent: "wallflow/1.0 (+https://github.com/MKSG-MugunthKumar/wallflow)"
  parallel_downloads: 3
  retry_attempts: 3
  timeout: 30