Skip to content

Wallflow

2026.09

Live wallpaper engine for macOS

Problem

Wallpaper Engine is Windows-only, so downloaded backgrounds cannot run on a Mac. Scenes use a proprietary .pkg format and the shaders are GLSL, so neither runs on macOS as-is.

My part

Reads the .pkg scene files directly and draws them with Metal. Built a GLSL-to-MSL translator that compiles all 452 shaders on Metal, and runs each scene script in a single JSContext, handling layer creation, camera, cursor events, and audio. Split pure logic (WallflowKit) from the rendering side (WallflowApp).

Result

Plays scenes, particles, effect chains, 3D perspective scenes, and puppet warp. The workshop window handles search, sorting, filtering, and downloading in one app.
SwiftMetalAppKit