Import & Export — back up and share your Swik setup
Once your wedges are arranged the way your hand wants them, that arrangement is muscle memory. Losing it because of a fresh OS install, a new Mac, or an accidental reset is a real cost. Swik's Import/Export feature dumps everything to a portable JSON file you can keep anywhere — Dropbox, iCloud Drive, a Git repo, a shared file with a colleague. This guide covers what gets exported, what gets imported, and the selective-import controls.
Exporting your setup
Open Settings → About (the last tab) and find the Configuration section. Two buttons: Export and Import.
- Click Export.
- A standard macOS save panel appears. Pick a location and filename — defaults to a
.jsonextension. - Decide whether to include sub-menus via the Include sub-menus in export checkbox above the buttons. On (the default) preserves your full hierarchy; off exports only the top ring, which is useful when you're sharing a layout with someone on the free tier (sub-menus are Pro-only — they'd be locked on import for non-Pro users).
- Click Save.
You'll see a green "Settings exported successfully!" confirmation. The file is now sitting wherever you saved it, ready to be backed up, version-controlled, or sent.
What's in the file
The export is a single JSON document with five top-level keys:
{
"slots": [ /* your wedges, including sub-menus if enabled */ ],
"hotkeyConfig": { /* the key combination that summons the menu */ },
"appearance": { /* theme, scale, behavior tunings, all UX config */ },
"exportDate": "2026-04-29T10:30:00Z",
"appVersion": "0.0.6.42"
}
The schema is stable across versions — newer Swik builds can read older exports, and older builds will skip fields they don't recognize. The appVersion field is informational; it's not used to gate compatibility.
Importing — and the selective options
Click Import. macOS file picker opens, scoped to .json files. Choose your previously-exported file. Swik validates the JSON and shows you a preview sheet with three checkboxes:
| Option | What it imports | When you'd uncheck it |
|---|---|---|
| Slots | Your full wedge layout — apps, sub-menus, custom actions | If you want to keep your current wedges but borrow only the look or hotkey from a friend's setup. |
| Hotkey | The trigger key combination | If your hotkey on this Mac collides with something the source Mac didn't have. Keep your own. |
| Appearance | Theme, scale, dwell time, magnetism, all behavior sliders, color-blind mode, sounds, haptics, window expansion settings | If you've tuned the physics on this Mac and don't want them overwritten. |
By default all three are checked — a full import. Uncheck whichever pieces you want to keep from your current config, then click Apply.
Any import is automatically pushed onto the undo stack. If the result isn't what you wanted, Cmd+Z in Settings reverts to your previous state.
Sub-menu truncation
If you import a layout that has more sub-wedges per sub-menu than your current setup allows (the sub-wedge count is configurable in Settings → Menu → Layout), Swik silently truncates the imported sub-menus to fit. Excess sub-wedges aren't kept in a hidden buffer — they're discarded on apply. So if you're moving from a Pro setup with 8 sub-wedges per ring to a free Mac, only the first 8 (or your configured count, whichever is smaller) survive.
If both Macs have the same Pro tier and the same sub-wedge count configured, this never happens — counts match, all sub-wedges import cleanly.
Common recipes
Move your setup to a new Mac
- On the old Mac: Settings → About → Export. Save to iCloud Drive, AirDrop the file, or email it to yourself.
- Install Swik on the new Mac. Run through onboarding, granting Accessibility.
- Settings → About → Import. Pick the file. Leave all three options checked. Apply.
- Done. The new Mac now has your exact layout, hotkey, and appearance.
Share a layout with a friend
Uncheck Include sub-menus in export if your friend is on the free tier — sub-menus would arrive locked on their machine. Send them the JSON. They import with all three options checked (or only Slots, if they've already configured their own hotkey).
Back up before a big experiment
About to try a wild new layout you might regret? Export first as swik-backup-2026-04-29.json. Experiment freely. If you don't like it: Import that backup file with all three options checked — same as a full reset to your last-known-good state.
Version-control your config
Some users keep their Swik export in a personal-dotfiles Git repo. Each meaningful tweak gets a commit. Reverting is git checkout followed by Import. Same model as keeping ~/.config in Git — your radial menu becomes part of your reproducible setup.
Troubleshooting
| Symptom | Likely cause | Fix |
|---|---|---|
| "Invalid JSON" error on import | The file was edited by hand and a comma or brace got mangled | Open in any JSON validator (jsonlint.com, or jq . file.json in Terminal). Fix the syntax error and retry. |
| Import succeeded but my old layout is gone | You imported with Slots checked — that overwrites the existing slots | Press Cmd+Z in Settings to undo. Or re-import your backup. |
| Sub-menus came in locked with a small lock icon | You imported a Pro-tier layout onto a free Mac | Sub-menus need Pro to be active. The data is preserved — upgrading to Pro unlocks them as-is. Or re-export from the source with Include sub-menus in export unchecked. |
| Hotkey didn't change after import | The Hotkey checkbox was unchecked in the preview | Re-import with all three options checked. Or set the hotkey manually in Settings → Hotkey. |
| App icons look wrong / missing for some wedges | The app referenced in a wedge isn't installed on this Mac | Open the wedge editor — broken wedges show with a generic icon. Pick a substitute app or remove the wedge. |
Frequently asked questions
Are profiles included in the export?
The current export covers slots, hotkey, and appearance — it captures one layout. Multi-profile export is on the roadmap; for now, switch to the profile you want to export and run Export from that state.
Can I edit the JSON by hand?
Yes — Swik's import is a strict JSON decode, so as long as the file remains valid JSON and matches the schema, it'll round-trip. Useful for batch-renaming wedge labels via sed/awk, or scripting a layout from a template. Keep a backup of the original before editing.
Does the export include my Pro license?
No. The license lives in StoreKit (or LicenseManager for direct sales), not in the exported settings. Importing a config from a Pro user onto a free Mac doesn't grant Pro features — it just imports the layout, which may include Pro-only wedge types that show as locked until the receiving Mac validates its own Pro license.
Are clipboard history or analytics data exported?
No. The export is configuration only — what your menu looks like and how it behaves. Clipboard history (if you've enabled the saved-across-sessions toggle), telemetry, and your Analytics tab data all live separately and are not portable. That's deliberate: you wouldn't want your clipboard contents going anywhere.
What happens to drag-to-slot file paths in an export?
Drag-to-slot pins the receiving app, not the file — so what gets exported is the app association, not any specific file. Imports work identically on a different Mac as long as the same app is installed.
Swik — a radial menu for macOS
Launch anything. One gesture. Free for five wedges, $9 one-time for unlimited. Requires macOS 14 Sonoma or later.
Download for macOS