A cross-platform GUI application for syncing World of Warcraft addons and settings using Git. Supports Windows, macOS, and Linux.
- 🎮 Sync WoW addons and settings across multiple computers
- 🔄 Support for Retail, Classic, and Classic Era versions
- 🌐 Cross-platform (Windows, macOS, Linux)
- 📦 Uses Git for version control and backup
- 💾 Persistent configuration storage
- 🖥️ Simple, intuitive GUI
- Python 3.7 or higher
- Git installed and configured on your system
- Clone or download this repository:
git clone <repository-url>
cd wow-sync- Install dependencies:
pip install -r requirements.txt- Run the application:
python -m wow_sync-
Set WoW Installation Path: Click "Browse" and navigate to your World of Warcraft installation directory
- Windows: Usually
C:\Program Files (x86)\World of Warcraft - macOS: Usually
/Applications/World of Warcraft - Linux: Depends on your installation (e.g., wine prefix)
- Windows: Usually
-
Set Git Repository URL: Enter the URL of your Git repository
- Example:
https://github.com/yourusername/wow-settings.git - You can create a private repository on GitHub for your settings
- Example:
-
Save Configuration: Click "Save Config" to persist your settings
-
Initialize Repository: Click "Initialize Repo" to set up the local Git repository
After making changes to your addons or settings in WoW:
- Click "Push to Remote"
- The app will copy your current WoW settings to the local Git repository
- Commit the changes
- Push them to your remote repository
To sync settings from another computer:
- Click "Pull from Remote"
- The app will download the latest changes from your Git repository
- Apply them to your WoW installation
The application syncs the following directories for each WoW version found:
- AddOns: All installed addons (
Interface/AddOns) - WTF: All settings, saved variables, and configurations (
WTF)
Supported WoW versions:
_retail_(Current retail version)_classic_(Classic WoW)_classic_era_(Classic Era)
Settings are stored in ~/.wow_sync_config.json and include:
- WoW installation path
- Git repository URL
The local Git repository is stored in ~/.wow_sync_repo
- Install the application
- Set your WoW path and Git repository URL
- Click "Initialize Repo"
- Click "Pull from Remote" to download your settings
- Run the application
- Click "Push to Remote" to backup your latest settings
- Run the application
- Click "Pull from Remote" to get the latest settings
- Make sure your Git repository exists on GitHub/GitLab/etc.
- Verify the repository URL is correct
- Ensure you have push/pull access (may need to configure Git credentials)
You may need to configure Git credentials. Options:
- Use SSH keys (recommended)
- Use Git credential manager
- Use personal access tokens for HTTPS
- Make sure you've selected the main World of Warcraft directory
- The directory should contain folders like
_retail_,_classic_, etc.
Warning: Your WoW settings may contain sensitive information like:
- Account names
- Character names
- Addon configurations
It's recommended to:
- Use a private Git repository
- Be careful about what you share
- Consider using
.gitignoreto exclude specific files if needed
- Use forward slashes or escaped backslashes in paths
- Git must be in your PATH
- May need to allow Python in Security & Privacy settings
- Git comes pre-installed on most recent versions
- Install git via package manager if not already installed
- tkinter may need to be installed separately:
sudo apt install python3-tk(Ubuntu/Debian)
MIT License - Feel free to modify and distribute
Contributions are welcome! Feel free to submit issues or pull requests.