Caution
Development of the standalone WEave application is on hold. We strongly recommend switching to WEngine-Plus.
Why switch?
Rather than running a separate standalone client, WEngine-Plus integrates directly into Wallpaper Engine itself: native Workshop browser, 1-click downloads, scene unpacking, and Steam accounts without running external windows.
π Repository: https://github.com/psyattack/WEngine-Plus
WEave is a powerful Wallpaper Engine Workshop Manager built with Tauri 2 and React. Discover, download, and manage thousands of wallpapers from Steam Workshop without opening Steam or a web browser.
preview.mp4
- Search wallpapers in Workshop by specified parameters
- One-click wallpaper installation
- Manage installed wallpapers
Specifically:
Workshop Browser
- Steam Workshop Integration: Replicates the standard Steam Workshop web interface features, including basic search, sorting, and filters (by category, age rating, resolution, etc.).
- Author Profiles: View all wallpapers and collections published by a specific author.
- Collections: Support for browsing Steam collections and their contents.
- Page Preloading: Smooth navigation by pre-fetching the next page of items.
- Description Translation: Translation of wallpaper descriptions (Google Translate API).
Download Management
- Steam Accounts Support: Built-in public accounts + ability to add custom accounts (supporting Steam Guard / QR-code authentication).
- Progress Tracking: Real-time progress display (amount downloaded) and download cancellation.
- Auto-Apply: Optional feature to automatically apply the latest downloaded wallpaper.
Library Management
- Apply & Delete: Quickly apply (activate) wallpapers on your desktop and delete them.
- Parameters & Presets: Adjust wallpaper properties in real time (playback rate, alignment, volume, color settings, brightness, contrast, etc.) and save options directly to
project.json(with automatic backup creation). - Batch Actions: Multi-select mode for bulk deletion or extraction of installed wallpapers.
- RePKG Decompiler: Unpack
.pkgfiles in one click.
Wallpaper Engine Integration
- Auto-Detection: Automatically detects your Wallpaper Engine installation directory.
- Control Center: Integrated media control bar to play, pause, mute, switch wallpapers, and toggle desktop icons visibility.
- Playlists & Profiles: Quickly load Wallpaper Engine playlists or settings profiles by name directly from the control bar.
Customization & Hotkeys
- UI Themes: 6 interface themes and 10 custom accent colors.
- Global Hotkeys: Customizable keyboard shortcuts to control playback, navigate pages, and open views.
- Localization: Interface available in both English and Russian (auto-detects system language on first launch).
And other features not mentioned here
- Windows 10/11 (x64)
- Wallpaper Engine (installed)
- .NET Runtime 8/9/10 (auto-downloaded if missing)
To install, download the latest release from GitHub Releases:
- Installer (
.exe .msi): Run the installer and follow the instructions. - Portable version (
.zip): Extract the archive to any convenient location on your disk and runWEave.exe.
Note
When you first log in, WEave will automatically download additional tools and the portable version of .NET Runtime 9.0.17 if .NET Runtime/SDK 8/9/10 is not detected on your system.
Development Setup
- Node.js (v20+)
- Rust (v1.77+)
- .NET Runtime/SDK 8/9/10
- Wallpaper Engine
# Clone repository
git clone https://github.com/psyattack/WEave.git
cd WEave
# Install dependencies
npm install
# Run in dev mode
npm run tauri dev
# Build for production
npm run tauri build
# Run tests
npm run test # Frontend tests
cd src-tauri && cargo test # Backend tests
# Checks backend
cargo check
# Checks frontend
npm run typecheck
npm run lint
# Bump
npm run bump
|
|
View structure
WEave/
βββ src/ # React frontend
β βββ assets/ # Static assets (logos, icons)
β βββ components/ # React components
β β βββ common/ # Reusable UI components (Select, ToastStack, SetupOverlay, etc.)
β β β βββ DetailsPanel.tsx # Main wallpaper details panel
β β β βββ details/ # Details panel sub-components (Actions, MetaGrid, Sidebar, Presets)
β β βββ dialogs/ # Modals & Dialogs (Legal, Update, Login/2FA, MultiDownload, etc.)
β β βββ installed/ # Installed wallpapers components (Grid, SelectionBar, Toolbar, WallpaperCard)
β β βββ layout/ # App layout components (Sidebar, TitleBar, TopBar)
β β βββ settings/ # Settings components (General, Accounts, Hotkeys, SettingsDialog)
β β βββ tasks/ # Task drawer component (TasksDrawer)
β β βββ views/ # Views/screens (Workshop, Collections, Installed, Author)
β β βββ workshop/ # Workshop components (Card, FilterBar, Pagination)
β βββ e2e/ # UI & integration tests (Vitest + Tauri mock)
β βββ hooks/ # React hooks (useWallpaperActions, useTheme, useBootstrap, useHotkeys, etc.)
β βββ i18n/ # Type-safe i18n system
β β βββ locales/ # Translation source files (en.ts, ru.ts)
β βββ lib/ # Utility helpers (errors, logger, tauri, tauri-mock, workshop)
β βββ stores/ # Zustand stores (app, dotnet, filters, hotkeys/, etc.)
β βββ types/ # TypeScript types (workshop.ts)
β
βββ src-tauri/ # Rust backend (Tauri)
βββ capabilities/ # Tauri v2 permissions & security profiles
βββ src/ # Backend source code
βββ commands/ # Tauri commands (invoked from frontend)
β βββ accounts.rs # Account management commands
β βββ download.rs # Download orchestration commands
β βββ extract.rs # Extraction commands (RePKG)
β βββ steam.rs # Steam login, cookies & webview commands
β βββ we.rs # Wallpaper Engine commands (install, apply, control)
β βββ ... # Metadata, config, i18n, autoupdate commands, etc.
βββ config/ # Configuration management
β βββ settings.rs # User settings service (JSON)
β βββ metadata.rs # Metadata caching service
βββ core/ # Core app logic
β βββ app_state.rs # Global application state (AppState)
β βββ errors.rs # Structured error types & formatting
β βββ logger.rs # Rotating file logger setup
β βββ runtime.rs # Portable .NET runtime manager
βββ plugins/ # External utility plugins
β βββ plugin_manager.rs # Plugin download & updates logic
β βββ plugin_paths.rs # External binary path resolution
βββ services/ # Business logic services
β βββ accounts/ # Encrypted Steam account storage service
β βββ workshop/ # Steam Workshop scraper, parser & webview handler
β βββ download.rs # Wrapper service for DepotDownloader
β βββ extract.rs # Wrapper service for RePKG extractor
β βββ we_client.rs # Wallpaper Engine API and monitor integration service
β βββ ... # i18n, translator, metadata services, etc.
βββ lib.rs # Tauri context & builder setup
βββ main.rs # Executable entry point
Configuration files and plugins are stored in:
%LOCALAPPDATA%\WEave\
| File / Directory | Description |
|---|---|
settings.json |
App settings |
metadata.json |
Cached wallpaper metadata |
user_accounts.enc |
Encrypted Steam accounts |
SteamWebView/ |
Steam parser data |
EBWebView/ |
App data |
plugins/ |
Auto-downloaded plugins (DepotDownloaderMod, RePKG) |
dotnet/ |
Portable .NET Runtime 9.0.17 (if needed) |
.log |
App log file |
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the MIT License. For full third-party notices and component licenses, see NOTICE.md.
- Download Tool: DepotDownloaderMod
- Package Extractor: RePKG
This application is not affiliated with or endorsed by Valve Corporation or Wallpaper Engine. Steam and Wallpaper Engine are trademarks of their respective owners.
For issues, questions, or feature requests, please open an issue on GitHub.



