Skip to content
turhe123Public

About

Ultra-lightweight 4K/8K video wallpaper & idle screensaver engine for macOS and Windows. Built with Rust & Tauri.

Topics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

Repository files navigation

Animi icon

Animi LiveWallpaper

Ultra-lightweight 4K/8K video wallpapers & idle screensaver for macOS and Windows.
Open-source · <1% CPU · zero bloat · pay what you want (even $0)

Latest release Build Downloads MIT Platforms Windows Support

⬇ Download (Pay What You Want) · Build from source · Report a bug · Support Or (Leo) Davidai ❤️


Animi turns any .mp4 / .webm / .mov into a live desktop wallpaper that sits behind your icons, driven by your OS's own hardware video decoder. A tiny Rust core (Tauri v2) does the window plumbing; there is no Electron, no background service, no account, no telemetry.

An open-source project by Or (Leo) Davidai — I build fast, lightweight, ad-free tools. If Animi makes your desktop nicer, consider supporting my work ❤️.

Features

🖥️ Multi-monitor, per-screen 4K/8K Same video everywhere, or a different one per display. Cover / Contain / Fill per screen. Hot-plug aware.
⚡ Smart 0 % GPU auto-pause A fullscreen or maximized app covering a display pauses that display's video (decoding stops). Optional pause on battery. Checked every 2 s.
🌙 Built-in idle screensaver No .saver / .scr files. After 1–30 min idle your wallpapers rise above every window (even native fullscreen apps), cursor hidden; any input dismisses instantly.
🔕 Silent menu-bar / tray mode Close the window and Animi leaves the Dock / Cmd-Tab and lives in the menu bar or system tray: Open · Pause/Resume · Mute · About · Quit.
💾 Remembers everything Per-display videos, scaling and settings persist in a small JSON file and restore on launch and on monitor re-plug.
🔇 Silent by default Videos loop muted like a GIF. Unmute from the tray if you really want sound.
🪶 Tiny ~1 % CPU on Apple Silicon with a 4K H.264 loop; 0 % while paused. Installer ≈ 10 MB.

Download

Grab the latest installer from the landing page (pay what you want, $0 is fine) or straight from GitHub Releases:

Platform File Notes
macOS 12+ (Apple Silicon + Intel) Animi-macOS.dmg Not notarized yet: on first launch right-click the app → Open.
Windows 10/11 x64 Animi-Windows-Setup.exe (or Animi-Windows.msi) SmartScreen may ask: More info → Run anyway.

How it works

  • macOS — each display gets a borderless NSWindow at kCGDesktopWindowLevel − 1 (below Finder's icons, above the static wallpaper) with CanJoinAllSpaces | Stationary | IgnoresCycle and ignoresMouseEvents, so icons stay clickable. The screensaver simply lifts the same windows to kCGScreenSaverWindowLevel.
  • Windows — the renderer is re-parented into the WorkerW behind SHELLDLL_DefView (Progman → 0x052C), the classic live-wallpaper technique; screensaver mode detaches it and sets HWND_TOPMOST.
  • Playback — a single <video muted loop playsinline> per display in the OS WebView (WKWebView / WebView2), which means hardware decoding for free and zero custom video code.
  • Engine — one Rust thread polls window coverage (CoreGraphics / Win32), battery (IOKit / GetSystemPowerStatus) and idle time (CGEventSource / GetLastInputInfo), pushing per-display pause/resume events to the renderers.

Build from source

Prerequisites: Rust (stable), Node 22+, and the Tauri v2 prerequisites for your OS (Xcode Command Line Tools on macOS; Visual Studio Build Tools + WebView2 on Windows).

git clone https://github.com/turhe123/animi.git
cd animi/animated-wallpaper
npm install
npm run tauri dev          # run with hot reload
npm run tauri build        # produce .dmg / .exe / .msi in src-tauri/target/release/bundle

Handy flags for the built binary: animi --background (start hidden in the menu bar) and animi /path/to/video.mp4 (apply a video to every display). See animated-wallpaper/README.md for the developer notes, commands and test hooks.

Repository layout

animi.config.json      ← GITHUB_USERNAME, CREATOR_DONATION_URL, names (single place to edit)
animated-wallpaper/    ← the Tauri app (Rust in src-tauri/, React UI in src/)
website/               ← static "Pay What You Want" landing page (GitHub Pages)
.github/workflows/     ← release.yml (macOS + Windows installers), pages.yml (website)

Releasing

  1. Bump version in animated-wallpaper/src-tauri/tauri.conf.json (and Cargo.toml / package.json).
  2. git tag v1.0.0 && git push --tags — the Release workflow builds a universal macOS .dmg and Windows .exe + .msi and attaches them (with stable file names) to the GitHub Release.
  3. Pushing to main deploys /website to GitHub Pages (enable Settings → Pages → Source: GitHub Actions once).

Support the project

Animi is MIT-licensed and will stay free. Installers are offered on a pay-what-you-want basis so I can keep shipping lightweight, open-source apps. If you'd like to say thanks:

☕ Support Or (Leo) Davidai ❤️

License

MIT © 2026 Or (Leo) Davidai

About

Ultra-lightweight 4K/8K video wallpaper & idle screensaver engine for macOS and Windows. Built with Rust & Tauri.

Topics

Resources

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages