Wallpaper Engine scene, video and web wallpapers, live on your Mac.
Browse Steam Workshop and set one per display.
macOS 15 Sequoia or later · Apple silicon (M1 or later) · Free signed download
Website · Guides · The app · FAQ · Build it · Documentation · Sponsor
The app
One window, four tabs: Discover, pixiv, Installed and Settings. The website runs that same interface on a demo library, so you can try it in your browser. Close the window and the app keeps running in the menu bar, where you can pause, resume or skip to the next wallpaper.
| Feature | What it does |
| --- | --- |
| Apply | Scene, video or web: press play and it becomes your desktop. Choosing a wallpaper only selects it. |
| Workshop | The live Steam Workshop, no sign-in to browse, with collections, each author's wallpapers and your subscriptions. Downloads run in the app, several at once, with a Steam account that owns Wallpaper Engine. Updates to the wallpapers you have are found once a day and installed in one click. |
| pixiv | pixiv's illustration rankings and tag search. Save any page of a work as a still wallpaper; sign in to pixiv for members-only works and, if your account allows them, R-18. |
| Settings | Every option its artist made, saved when you apply your changes; named property presets keep several versions and can be exported or imported. |
| Music | Turn on Audio response and wallpapers made for sound move with what your Mac plays. Turn on Media integration and ones with a music display show the song that's on. |
| Playlists | Let each display rotate through all wallpapers, favorites, its own list or a local collection. Save named playback plans, or switch between a day and a night wallpaper. |
| Displays | Every display gets its own wallpaper, or mirrors another, with its own scaling, frame rate and volume. |
| Battery | On battery, keep running, drop to a render scale and frame rate you choose, or pause. One choice, off until you pick it. The rest of playback and quality is on Performance. |
| Energy | Settings → Performance shows the power the app draws and, on a laptop, its share of a full charge per hour. Change a setting there and it compares before and after. Each installed wallpaper gets its own rating once it has been measured. |
| Native | Light, dark and your accent colour, like the rest of macOS, in English, 简体中文, 繁體中文 or 日本語. |
| Import | Bring the Wallpaper Engine folders you already have, or your own videos and pictures. Drop them on the Dock icon or use Import; the app copies them and leaves the originals alone. |
| Keep your setup | Export settings and retained files, optionally the whole wallpaper library; preview conflicts before a recoverable restore at the next launch. Sign-ins and passwords stay on this Mac. |
| Picture placement | Drag, position and zoom imported pictures and saved pixiv pages separately for each display, without changing the original image. |
| Out of sight, paused | A covered display stops its own wallpaper, and sleep or lock pauses them all. Playback rules can also pause or mute them while another app plays sound, while an app you choose is running or in front, in Low Power Mode, when the Mac runs hot, or during a Focus. Your own pause stays yours. |
| Automation | Keyboard shortcuts that work in any app, actions for Shortcuts, Siri and Spotlight, and wallpapermachine:// links: play, pause, next, apply a wallpaper. |
| Lock screen | Video and scene wallpapers can animate the lock screen too. Experimental and off by default. |
| Screen saver | Use each display’s applied scene, video, web or still wallpaper as its screen saver. Independent of lock-screen animation; experimental on macOS 26+. |
Rust core · Metal graphics
| Layer | What it does |
| --- | --- |
| Swift shell | The AppKit app. Its control panel is HTML in WKWebView (WebUI/), and web wallpapers run in web views of their own. |
| Rust core | The vendored renderer (upstream/renderer): displays, wallpaper windows, video decode and audio capture, bridged to Swift with uniffi. |
| C++ scene engine | Open Wallpaper Engine, statically linked into the Rust core, draws scene wallpapers. |
| Metal, via MoltenVK | Scenes render through Vulkan on Metal. A native Metal scene renderer and AVFoundation video are opt-in under Settings → Performance. |
| Lock screen | A sandboxed ExtensionKit extension (Extension/). |
How the pieces talk to each other: docs/architecture.md. Where each file lives: docs/repository-layout.md.
Good to know.
A few things before your change of scenery.
What is WallpaperMachine?
WallpaperMachine is a native macOS client for Wallpaper Engine wallpapers. It brings scene, video and web wallpapers to your desktop, with Steam Workshop browsing and downloads built in.
Can I use Wallpaper Engine on a Mac?
Wallpaper Engine itself is made for Windows. WallpaperMachine is an independent Mac app built to play its scene, video and web wallpapers, with Steam Workshop browsing built in; compatibility varies by wallpaper. It is not affiliated with Wallpaper Engine or Valve. More in Wallpaper Engine on a Mac.
Do I need to own Wallpaper Engine?
You can browse the Workshop without signing in. Workshop downloads require a Steam account that owns Wallpaper Engine, and scene wallpapers need shared resources from a purchased Wallpaper Engine installation. The bundled video wallpaper, Aurora Drift, plays without either. More in Workshop browsing and downloads.
Which Macs is it built for?
Macs with Apple silicon (M1 or later) running macOS 15 Sequoia or later. The animated lock screen needs macOS 26 Tahoe or later. Intel Macs aren't supported.
Will every wallpaper work?
WallpaperMachine supports scene, video and web rendering. Compatibility varies by wallpaper; support for these formats does not mean every Workshop item will render identically, and Application wallpapers don't run. If one looks wrong, Not working? Report on GitHub in its details opens a new GitHub issue with that wallpaper's information filled in, for you to check and send. To attach logs, export a diagnostics report from Settings → Storage → Troubleshooting. Home folder paths, your Mac user name and Steam account names are replaced first.
How do I get it?
Download the signed build free from the latest release, or build it from the source. The build is not notarized, so macOS holds its first launch until you click Open Anyway in System Settings → Privacy & Security. The install guide walks through it, from the download to the first-run guide. From then on the app checks for new versions itself and, where it can replace its own copy, offers Restart to Update.
Is WallpaperMachine really free?
Yes. The signed download is free, and the complete source is here if you would rather build it yourself. Becoming a Supporter adds a sponsor place on the website and in this README, plus priority support. It buys no license: the app is the same with or without it. What it includes and how to become one: SPONSORS.md.
Open source. Free to build.
The complete source is here. It builds on a Mac with Apple silicon, Xcode 26 (macOS 15.6 or later), a
full Xcode selected with xcode-select and the Homebrew packages listed under
Prerequisites; the renderer and scene engine are
vendored under upstream/, not pulled in as submodules.
python3 scripts/install_ffmpeg.py # the project's LGPL FFmpeg build
python3 scripts/build.py --configuration Release # renderer, bindings, Xcode project, app
The app lands in build/Build/Products/Release/WallpaperMachine.app.
python3 scripts/test.py runs the tests, and
python3 scripts/package.py --configuration Release --install makes the bundle
self-contained, wraps it in a disk image and copies it to ~/Applications.
Scene wallpapers also need shared resources from a Wallpaper Engine you own.
Toolchain, packaging and troubleshooting: docs/build.md. Working on the code: CONTRIBUTING.md.
Documentation
| Document | Purpose | | --- | --- | | docs/README.md | Index of every document, features included | | docs/architecture.md | Runtime structure and module boundaries | | docs/repository-layout.md | Directory map and where new code goes | | CONTRIBUTING.md | Contributor working agreement | | docs/testing/README.md | Test strategy, commands, evidence policy | | docs/release.md | Versioning, release notes and the CI release pipeline | | CHANGELOG.md | What changed in each published version | | LICENSING.md | License policy, Supporter model and distribution status | | SPONSORS.md | Supporter pricing, what it includes and other ways to help | | AGENTS.md | Rules for agents working in this repository |
Thank you. To every Supporter.
Supporters who choose to be shown are listed here and on the sponsor wall. Supporter is a one-time purchase for a sponsor place and priority support; the app and its source stay free for everyone. If WallpaperMachine has earned a place on your desktop, become a Supporter.
License
The source is offered under the GNU General Public License, version 2 only (LICENSE). The vendored renderer is GPL-2.0-only and the app shell is derived from it; upstream code keeps its own copyright and license notices, recorded in upstream/provenance.json. Every recipient keeps every right the GPL grants, whether or not they are a Supporter.
No binary is cleared for distribution yet. Apache-2.0 components (MoltenVK, the Vulkan loader, SPIRV-Tools, parts of glslang and the vendored spirv_reflect) are in every build's link closure and are not compatible with GPLv2. LICENSING.md records the policy, the Supporter model, each component's license, the open blockers and what would resolve them. Workshop wallpapers belong to their creators, and scene resources come from a Wallpaper Engine you own; the app bundles neither.
Friend Link
- linux.do —— Where possible begins
A new view.
Now on your Mac.
Made for a more personal Mac.
An independent project. Not affiliated with Wallpaper Engine or Valve.
Banner artwork: 千咲 · 不散的春之花 by 夜莺Night, Wuthering Waves artwork. All artwork rights remain with their owners.