Small desktop tool to automatically backup WoW Addon configuration. Built with Kotlin and Compose Multiplatform.
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-11-03 14:25:08 +00:00
.gitea/issue_template Bug report template 2026-08-25 10:44:52 +01:00
.github/workflows Publish via Homebrew 2026-08-25 16:06:46 +01:00
agent docs(driver): record history/decisions for G-5 2026-10-31 12:41:32 +00:00
composeApp fix(ui): derive light-mode design tokens from the light scheme and align Dark accent roles 2026-10-31 12:32:44 +00:00
docs README updates [skip ci] 2026-11-03 14:25:08 +00:00
gradle Kotlin version bump 2026-10-28 13:36:38 +00:00
.gitignore Gitignore [skip ci] 2026-10-31 11:09:35 +00:00
AGENTS.md Agentic guidance [skip ci] 2026-10-31 11:08:28 +00:00
build.gradle.kts Config screen 2026-03-04 14:19:19 +00:00
gradle.properties Versioning 2026-03-04 16:02:28 +00:00
gradlew Docs 2026-08-24 15:22:22 +01:00
gradlew.bat Docs 2026-08-24 15:22:22 +01:00
INSTALL.md Typos and formatting. [skip ci] 2026-09-21 12:56:58 +01:00
opencode.jsonc More docs. Setting up Linear MCP [skip ci] 2026-10-28 14:49:16 +00:00
README.md README updates [skip ci] 2026-11-03 14:25:08 +00:00
settings.gradle.kts Config screen 2026-03-04 14:19:19 +00:00
UNLICENSE Unlicense 2026-08-25 12:47:44 +01:00

WoW Backup

Automatic, scheduled backups of your World of Warcraft WTF and Interface folders — a lightweight tray app for macOS, Windows, and Linux.

License Forgejo release Platform Homebrew Kotlin

Installation & Download

Pre-built binaries for macOS, Windows, and Linux are provided on each release.

Tip

See here for download links and step-by-step installation instructions.

Key Features

  • Smart Auto-Configuration: Automatically detects standard WoW retail install location.
  • Automated & Scheduled Backups: Background scheduler ensures regular backups with no required user interaction.
  • Compression & Pruning: Supports optional ZIP compression and automatic pruning of backups beyond the configured limit.
  • Game Process Detection: Checks for running WoW processes before running backups to prevent conflicts.
  • Notifications: Notifies the user when backups start, succeed, fail, or are skipped.
  • Launch at Startup: For truly automated operation (MacOS/Windows only).
  • Theming & Customization: Modern MaterialDesign, support for Light/Dark mode, and customisable accent colour.

Application Data Locations

The app uses a configuration file to store user preferences, stored in the following locations:

  • macOS: ~/Library/Application Support/WoWBackup/
  • Windows: %APPDATA%\WoWBackup\
  • Linux: ~/.config/WoWBackup/

Tech Stack & Architecture

  • Language: Kotlin Multiplatform
  • UI Framework: Compose Multiplatform + Material3
  • Architecture: MVVM + Kotlin Coroutines
  • Scheduling: io.github.kevincianfarini.cardiologist
  • Logging: logback-classic + kotlin-logging-jvm with daily rotation and archiving
  • Serialization: User settings stored locally using kotlinx-serialization-json
  • Theming: com.materialkolor:material-kolor

Build & Run

Prerequisites

  • JDK 17 or higher installed

Development Run

  • macOS / Linux:
    ./gradlew :composeApp:run
    
  • Windows:
    .\gradlew.bat :composeApp:run
    

Package Application Distributions

  • macOS DMG:
    ./gradlew :composeApp:packageDmg
    
  • Windows MSI:
    .\gradlew.bat :composeApp:packageMsi
    
  • Linux DEB:
    ./gradlew :composeApp:packageDeb
    

License

This project is released into the public domain. See the UNLICENSE file or unlicense.org for details.