English · 简体中文 · 한국어 · Português
A free, open-source Mac app that plays Wallpaper Engine scene, video and web wallpapers
on your desktop, straight from the Steam Workshop. For anyone who wanted Wallpaper Engine on a Mac.
macOS 15 Sequoia or later · Apple silicon (M1 or later) · Release notes and checksums
Quick start · The app · Why trust it · FAQ · Build it · Guides · Documentation · Sponsor
Your library in the middle, the selected wallpaper’s options on the right, what is playing along the bottom. Apply wallpaper and it becomes your desktop.
If WallpaperMachine earns a place on your desktop, a ⭐ helps other Mac users discover it.
## Quick start 1. **Download** the [free disk image](https://www.wallpapermachine.app/download) for the latest version. 2. **Install**: open it and drag WallpaperMachine to Applications. 3. **Open it.** The download isn't notarized yet, so macOS holds the first launch: click **Open Anyway** in System Settings → Privacy & Security, once. A first-run guide takes it from there, and the app updates itself from then on. The [install guide](https://www.wallpapermachine.app/guides/install/) walks through every step with pictures. - **Works right away:** the bundled video wallpaper Aurora Drift, pixiv illustrations, your own videos and pictures, and browsing the whole Workshop without signing in. - **With a Steam account that owns Wallpaper Engine:** Workshop downloads, and scene wallpapers, which use shared resources from the Wallpaper Engine you own. Rather build it yourself? It takes two commands: see [Open source. Free to build.](#open-source-free-to-build) ## The app One window with tabs across the top: your library (all wallpapers, favorites and your collections), Steam Workshop and pixiv to browse, and Settings, with what is playing in a bar along the bottom. The website has a demo of it on a sample library, so you can [try it in your browser](https://www.wallpapermachine.app/#app). Close the window and the app keeps running in the menu bar, where you can pause, resume, mute or go to the previous, next or a random wallpaper, on each display separately when you have more than one. When it launches at login, it starts there without opening the window. | Feature | What it does | | --- | --- | | [**Apply**](docs/features/control-panel.md#selection-versus-apply) | Scene, video or [web](docs/features/web-wallpapers.md): Apply wallpaper and it becomes your desktop. Choosing a wallpaper only selects it. | | [**Preview**](docs/features/wallpaper-properties.md#live-preview) | Try an installed scene, video or web wallpaper in its own window, with the current options and separate playback controls, before changing the desktop. Sliders, colours and switches show in it as you change them. | | [**Workshop**](docs/features/workshop-downloads.md) | The live Steam Workshop, no sign-in to browse, with [collections and each author's wallpapers, plus your subscriptions and favorites once you sign in to Steam](docs/features/workshop-downloads.md#collections-authors-and-subscriptions); signed in, subscribe or unsubscribe from the app, and read an item's newest [comments](docs/features/workshop-downloads.md#comments). Downloads run in the app, several at once, with a Steam account that owns Wallpaper Engine. [Updates](docs/features/workshop-downloads.md#updates) to the wallpapers you have are found once a day and installed in one click. | | [**pixiv**](docs/features/pixiv.md) | 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**](docs/features/wallpaper-properties.md#properties) | Every option its artist made, saved when you apply your changes; [named property presets](docs/features/wallpaper-properties.md#property-presets) keep several versions and can be exported or imported. An optional switch in Settings [shows your edits on the desktop](docs/features/wallpaper-properties.md#showing-edits-on-the-desktop) as you make them. | | [**Music**](docs/features/audio-response.md) | Turn on Audio response and wallpapers made for sound move with what your Mac plays. [Media integration](docs/features/media-integration.md) is on by default, so ones with a music display show the song that's on. | | [**Playlists**](docs/features/playlists.md) | Let each display rotate through all wallpapers, favorites, its own list or a [local collection](docs/features/control-panel.md#local-collections), on a timer or each time the Mac is unlocked; Play or Shuffle on a collection starts one in a click. Reorder a list, save named playback plans, or switch between a day and a night wallpaper. Failed applications are skipped temporarily. | | [**Displays**](docs/features/control-panel.md#target-display) | Every display gets its own wallpaper, or mirrors another, with its own scaling, position, frame rate and volume. [Fit with blurred backdrop](docs/features/wallpaper-properties.md#fit-with-blurred-backdrop) shows a wallpaper whole on a screen of another shape and fills the edges with a blurred copy instead of black bars. [Apply one wallpaper to every display, copy or swap wallpapers and save multi-display arrangements](docs/features/display-layouts.md) to restore their wallpaper choices from Settings or Shortcuts. | | [**Battery**](docs/features/performance.md#playback) | On battery, keep running, drop to a render scale and frame rate you choose, or pause. Low Power Mode, a hot Mac and a low battery can lower quality the same way instead of pausing. Off until you pick it. The rest of playback and quality is on [Performance](docs/features/performance.md). | | [**Energy**](docs/features/performance.md#energy-use) | 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**](docs/features/appearance.md) | Light, dark and your accent colour, like the rest of macOS, in English, [简体中文, 繁體中文, 日本語, 한국어 or Português](docs/features/control-panel.md#language). | | [**Import**](docs/features/control-panel.md#downloads-and-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**](docs/features/backup-restore.md#local-backup-and-restore) | 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. | | [**External drive**](docs/features/library-location.md) | Keep the wallpaper library and downloads on an external drive or in another folder, and move them back to this Mac at any time. Settings and Steam sign-ins stay on this Mac. | | [**Picture placement**](docs/features/wallpaper-properties.md#image-placement) | Drag, position and zoom imported pictures and saved pixiv pages separately for each display, without changing the original image. | | [**Out of sight, paused**](docs/architecture.md#desktop-wallpaper-windows-and-private-api-handling) | A covered display stops its own wallpaper, and sleep or lock pauses them all. [Playback rules](docs/features/performance.md#playback) can also pause or mute them while another app plays sound, while an app you choose is running or in front, when the battery is low, in Low Power Mode, when the Mac runs hot, or during a Focus. With several displays, you can also keep only the one you are using playing. Your own pause stays yours. | | [**Automation**](docs/features/automation.md) | Weekday and time schedules, local sunrise/sunset calculations, light/dark appearance choices, [a different wallpaper for each desktop](docs/features/spaces.md), and temporary Focus wallpapers or playlists. Keyboard shortcuts, Shortcuts, Siri, Spotlight and links can control playback, mute every wallpaper, pick a random wallpaper, and apply wallpapers, saved playlists or property presets. | | [**Lock screen**](docs/features/lock-screen.md) | Video and scene wallpapers can animate the lock screen too. Experimental and off by default. | | [**Screen saver**](docs/features/lock-screen.md#use-wallpaper-as-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+. | ## Why you can trust it - **Open source, all of it.** The app, its renderer and its scene engine are all in this repository under GPL-3.0-only. There is no closed core and no paid features: the app is the same for everyone. - **Built in public.** Every release is built and tested by [GitHub Actions](docs/release.md#build-buildyml) from a tagged commit, then published with a SHA-256 checksum and a build provenance attestation. Check a download came from this repository's workflow: ```sh gh attestation verify WallpaperMachine-*-arm64.dmg --repo WallpaperMachine/WallpaperMachine ``` - **No tracking.** The app goes online for what you ask of it: Steam for the Workshop, pixiv when you open it, GitHub for update checks, and, only if you turn on [Send performance data](docs/features/telemetry.md), one small report a day with load times, frame rates and your Mac's model. That report has no names, files or account details, and turning it off deletes what was sent. Apart from that, the app sends a [daily count](docs/features/telemetry.md#daily-active-count) that it ran that day, with its version and no install ID, so we know how many Macs use it. Sign-ins and passwords stay on your Mac. - **Updates it can check.** The built-in updater installs only a disk image whose SHA-256 matches the release; one it can't verify is [refused, never installed unchecked](docs/features/updates.md#downloading). Where GitHub can't be reached, as in mainland China without a VPN, it fetches the same files through [public GitHub download proxies](docs/features/updates.md#what-a-check-reads), which can't change what installs. - **Actively maintained.** New versions ship often, and every one is written up in the [changelog](CHANGELOG.md), in English and 简体中文. - **Problems get a real path.** **Not working? Report on GitHub** in any wallpaper's details opens a prefilled [issue](https://github.com/WallpaperMachine/WallpaperMachine/issues), and [diagnostics reports](docs/features/diagnostics.md) remove your home folder, Mac user name and Steam account names before you share them. ## Rust core · Metal graphics | Layer | What it does | | --- | --- | | **Swift shell** | The AppKit app. Its control panel is native SwiftUI ([`App/Views/ControlPanel`](App/Views/ControlPanel)), and [web wallpapers](docs/features/web-wallpapers.md) run in web views of their own. | | **Rust core** | The renderer ([`Renderer/`](Renderer)): displays, wallpaper windows, video decode and audio capture, bridged to Swift with uniffi. | | **C++ scene engine** | The project's scene engine ([`Renderer/Engine`](Renderer/Engine)), statically linked into the Rust core, draws scene wallpapers. | | **Metal** | Scenes render natively on Metal, and a scene the native renderer cannot draw is not drawn: it keeps its last picture and says why in [Settings → Performance](docs/features/performance.md). Video wallpapers play with the app's own players (AVFoundation, and a WebM player for WebM and Matroska files). | | **Lock screen** | A sandboxed ExtensionKit extension ([`Extension/`](Extension)). | How the pieces talk to each other: [docs/architecture.md](docs/architecture.md). Where each file lives: [docs/repository-layout.md](docs/repository-layout.md). ## Good to know. A few things before your change of scenery.
A new view.
Now on your Mac.
Made for a more personal Mac.
An independent project. Not affiliated with Wallpaper Engine or Valve.
Wallpapers shown: 千咲 · 不散的春之花 and 流萤 · 仲夏萤火之约 by 夜莺Night, Cyberpunk: Edgerunner-Lucy by 凉粥, RedBull F1 2026 by a bad driver, 绝区零 · 艾莲乔 by BIGDEECK and Into The Abyss by Blloopy. All artwork rights remain with their owners.