OpenWallpaper is an open platform for live wallpapers, inspired by Wallpaper Engine and aiming to become a viable open source alternative to it. It supports KDE Plasma Wayland, Hyprland and wlroots-based compositors through wlr-layer-shell protocol.
- OpenWallpaper scenes – like Wallpaper Engine scenes, but better! Instead of using limited declarative format, a scene is a WebAssembly module - meaning if you can code it, you can make it a wallpaper, while having lightweight runtime and native performance with AOT compilation
- Wallpaper Engine scenes – can be converted to OpenWallpaper scenes with wpe-compile, so OpenWallpaper is also an open source Wallpaper Engine implementation
- Video and GIF wallpapers – supported through libmpv
- Pause hidden – try to detect when wallpaper is covered by another window and can't be visible, and pause rendering, saving CPU and GPU resources (DE-dependent, see platform support)
- Multiple monitors – render to specific display when it's connected, and sleep without wasting resources when it's not
- Audio visualization – scene API exposes audio spectrum data through cava
Ecosystem:
- wallpaperd – Live wallpaper app, supporting OpenWallpaper scenes as well as video wallpapers
- wpe-compile – A tool to make OpenWallpaper scenes from Wallpaper Engine pkg scenes using code generation
Scene development: