# MPCkit Application to create basic MPC Sample starter projects from your desktop. **v0.5.0 is a beta for testing.** Expect rough edges, and keep copies of projects you care about. ## What it does - Build kits for the Akai MPC Sample on your computer: assign WAV files to pads (banks A–H, 16 pads each), tune them, set mute groups, and move, copy or swap pads. - Set up sequences: name, tempo and length. Notes are recorded on the device. - Load a project saved on the device, change it, and export it again. - Export to a folder (for example straight onto the device's card) or a zip. A project is a `.xpj` file plus a `_[ProjectData]` folder with the samples. ## Install Builds are not signed yet, so each system warns the first time you open MPCkit. - **Windows 10 and 11:** run `mpckit.exe`. If SmartScreen says "Windows protected your PC", choose **More info**, then **Run anyway**. MPCkit uses the WebView2 runtime, which is part of Windows 11 and current Windows 10. - **macOS:** move `mpckit.app` to Applications and open it. macOS will say it can't check the app for malicious software. Open **System Settings → Privacy & Security**, scroll to the message about MPCkit and choose **Open Anyway**, then confirm. - **Linux:** make the file executable (`chmod +x mpckit`) and run it. It needs the GTK 4 and WebKitGTK 6.0 libraries, which current desktop distributions include or offer in their package manager. ## Development MPCkit is a [Wails v3](https://v3.wails.io) app: Go for all file work, Svelte + TypeScript for the window. You need: - Go 1.26 or newer - Node.js (current LTS) with npm - The Wails CLI: `go install github.com/wailsapp/wails/v3/cmd/wails3@v3.1.0` - On Windows, the WebView2 runtime (already part of Windows 11). On Linux, the GTK and WebKitGTK development packages that `wails3 doctor` lists. Then, from the repository root (cmd, PowerShell or a shell): ``` wails3 doctor # checks the tools above wails3 dev # builds and opens the app; reloads on changes wails3 build # builds bin/mpckit (bin\mpckit.exe on Windows) ``` The first run installs the frontend packages and generates `frontend/bindings` from the Go service. `wails3 build` stamps the version (`APP_VERSION` in `Taskfile.yml`, kept in step with `version` in `build/config.yml`) and the commit it was built from, so About shows "Version 0.5.0" and "Build 2354f57" ("-dirty" if there were uncommitted changes). `wails3 dev` shows "dev". The app icon is drawn by `go run ./tools/icon build/appicon.png`. The Windows and macOS icon files are generated from that PNG during the build. Tests: `go test ./...`. On Linux without the GTK packages, use `CGO_ENABLED=0 go test -tags purego ./...` instead. `go run ./cmd/mpckit-cli` builds a project from the command line, `go run ./tools/checkpoint-a` builds the device test pack (see its README), and `go run ./tools/xpjdiff A.xpj B.xpj` compares two projects (the .xpj contents and the data folders). ## Disclaimer MPCkit is an independent project. It is not affiliated with, endorsed by or supported by Akai Professional or inMusic Brands. Akai, MPC and MPC Sample are trademarks of their respective owners and are used here only to describe the device MPCkit works with. ## Licence MIT. See [LICENSE](LICENSE).