Building from Source
How to build and configure WolfWave for development
This guide is for developers who want to build WolfWave from source. If you just want to use WolfWave, see the Installation guide.
Prerequisites
- macOS 26.0+ (Tahoe)
- Apple Silicon (M1 or later)
- Xcode 16.0+
- Swift 5.9+
- Command Line Tools:
xcode-select --install
Clone the Repository
git clone https://github.com/MrDemonWolf/WolfWave.git
cd WolfWaveConfigure API Keys
Copy the example configuration file:
cp apps/native/wolfwave/Config.xcconfig.example apps/native/wolfwave/Config.xcconfigOpen apps/native/wolfwave/Config.xcconfig and set your keys:
TWITCH_CLIENT_ID = your_twitch_client_id_here
DISCORD_CLIENT_ID = your_discord_client_id_hereGet a Twitch Client ID at dev.twitch.tv/console/apps. Get a Discord Application ID at discord.com/developers/applications.
Config.xcconfig is gitignored — each contributor uses their own.
Open the Project
make open-xcode
# or
open apps/native/wolfwave.xcodeprojBuild and Run
Build and run from Xcode using ⌘R.
Production Build
For a release build with DMG output:
make prod-buildThe DMG will be created at builds/WolfWave-{version}-arm64.dmg. If a Developer ID Application certificate is found in your Keychain, the app will be re-signed for distribution automatically.
To build and install directly to /Applications:
make prod-installNotarization
After building the DMG, notarize it for Gatekeeper-trusted distribution:
APPLE_ID=you@example.com \
APPLE_TEAM_ID=YOUR_TEAM_ID \
APPLE_APP_PASSWORD=xxxx-xxxx-xxxx-xxxx \
make notarizeGenerate an app-specific password at appleid.apple.com under Sign-In and Security → App-Specific Passwords.
CI/CD
Pushing a version tag triggers the GitHub Actions release workflow, which creates a draft GitHub Release:
git tag v1.2.0
git push origin v1.2.0After the workflow completes, build and notarize locally with make prod-build && make notarize, upload the DMG to the draft release, and publish it. Required secrets (TWITCH_CLIENT_ID, DISCORD_CLIENT_ID) must be configured in your repository's Actions secrets. See the Development Guide and PUBLISH.md for the full release checklist.