Skip to content

Repository files navigation

KeepSake — Every companion has a story. Pokémon save editing and personal journals, made for Mac.

A home for the Pokémon you keep coming back to.
A native SwiftUI save editor with personal journals, saved teams, and a little room for nostalgia.

↓ Download for Mac   ·   Take a look   ·   Get started   ·   Support   ·   Credits

macOS 14+   /   Apple Silicon + Intel   /   Apple notarized   /   GPL-3.0-or-later

KeepSake’s Pokémon editor with a Legends: Arceus save, box sprites, and party

Made for your adventures

KeepSake brings PKHeX.Core and offline Auto-Legality to a native Mac interface. Edit your collection, find encounters, organize teams, and keep the memories that make those Pokémon yours.

The editor The keepsakes Your Mac
Pokémon, boxes, stats, moves, trainer details and legality reports. Companion journals, favorite Pokémon, team pages and custom covers. Native SwiftUI, independent save windows, drag-and-drop and in-app updates.
Inventory, Pokédex, Mystery Gifts and game-specific tools. Local display names and stories, separate from exported game data. Game colors, personal presets, pixel sprites and HD portraits.

Download

Your Mac Choose this release asset
Apple Silicon · M-series KeepSake-<version>-macOS-arm64.zip
Intel KeepSake-<version>-macOS-x86_64.zip

Get the latest signed release →

Unzip the download and move KeepSake.app to Applications. Both builds include their runtime; no separate .NET installation is required.

Save export hotfix: Use 0.42 or later when exporting Switch saves. Earlier versions could write invalid exports and automatic backups. Updating prevents the issue; it does not repair existing files. Keep your original saves.

Already using 0.39 or later? Choose KeepSake → Check for Updates to download, verify, install and relaunch. Settings → Updates & Backup offers daily automatic checks and optional automatic download/install on quit. Every open workspace can cancel quitting to protect unsaved edits.

A look inside

A journal worth keeping

Give companions their own stories, save your favorite teams, and choose covers that feel like you. Journal names, memories and styles stay in KeepSake without changing Pokémon data.

Personal Pokémon journal with navy and gold companion cards
Your companions
Names, favorites and memories in one place.
Two saved teams with different cover colors
Your teams
Keep more than one adventure close.
Unova trainer passport displaying a party of six and eight badges
Your trainer passport
A team, a region and the badges along the way.
Companion journal customization with cover styles and a story editor
Your own details
Custom covers and room to tell their story.

The tools behind the adventure

Search encounters and event gifts, inspect stats and legality, and use the tools available for your save’s game. Click a screenshot to see the full-size capture.

Stats & legality — understand your Pokémon

Stat profile showing base stats, IVs, grit and totals Auto-Legality result awaiting review Expanded PKHeX legality report

Encounters & Mystery Gifts — find the next companion

Encounter search with Legends: Arceus results Mystery Gift gallery with language and origin filters

Fashion, Pokédex & save tools — the rest of your world

Hisui wardrobe with clothing categories and ownership controls Pokédex cards displaying seen and caught status Species guide with types, abilities and base stats

Your first adventure

  1. Open a save or Pokémon file, or drag it into the window. Sample workspaces are also available.
  2. Select a Pokémon, make your edits, then Set to Slot to keep the edited Pokémon in the save.
  3. Choose Export Copy to write the edited save while keeping your original file intact.
  4. Use Save Party as Team to add your current party to the journal, then make the cover and story yours.

Choose File → New KeepSake Window (⌘N) for another independent save workspace. Journals and appearance preferences are shared. To move Pokémon between separate save windows, export and open a Pokémon file; direct cross-window Pokémon dragging is not supported.

Backup and restore

Settings → Engine → PKHaX mode disables automatic legality checks and enables unrestricted ability choices, raw form IDs and stored party stats. The editor shows Unchecked while active. File-format limits remain; Auto-Legality stays available as a manual tool.

Settings → Files & Startup manages original-save backups and save discovery. Updates & Backup lets you choose a destination, including a folder in iCloud Drive, and create a dated backup containing journal pages, teams, basic appearance preferences and existing original-save backups.

Cloud transfer is managed by macOS. KeepSake confirms that files were written locally, not that they have finished uploading. Keychain is for credentials, not save storage. Backups do not include unsaved editor changes or arbitrary files elsewhere on your Mac.

To restore your journal, import Journal.json from My Journal; entries and teams merge using their modification dates. For a save, copy the appropriate .bak file out of Original Save Backups and open that copy in KeepSake. RESTORE.txt accompanies each backup. Appearance.plist records basic preferences for reference; it is not automatically imported.

Help

Choose Help → KeepSake Support for backup tools, update checks and a link to Issues. Copy App Details includes only the app version, macOS version and architecture. Avoid posting personal saves or trainer details in public reports.

Build

Requires Swift 6 tooling, the macOS SDK and .NET SDK 10.

KEEPSAKE_ARCH=arm64 KEEPSAKE_APP_PATH="$PWD/KeepSake-AppleSilicon.app" bash build.sh
KEEPSAKE_ARCH=x86_64 KEEPSAKE_APP_PATH="$PWD/KeepSake-Intel.app" bash build.sh

Use distinct output paths. The build script writes app bundles and applies a local ad-hoc signature. SIGNING.md explains Developer ID signing and notarization; credentials belong in Keychain. FEATURE-COVERAGE.md documents implementation coverage and native differences. Windows UI layout equivalence, LiveHeX and Windows plugins are outside this release's scope. Settings includes all ten PKHeX interface languages, independently of the game-data catalog language. Common editor labels and navigation reuse PKHeX translations; untranslated specialized tools and guidance fall back to English.

Credits and license

Made with love by Kai White.

KeepSake is an unofficial project distributed under GPL-3.0-or-later; see LICENSE and THIRD-PARTY-NOTICES.md. Pokémon and artwork belong to their respective owners. The source license does not relicense separate artwork.

Keeping the engine current

KeepSake checks official PKHeX releases daily and opens draft Core update PRs with compatibility results. Updates are reviewed before a separately signed and notarized KeepSake release. How upstream updates work →

About

A native macOS Pokémon save editor and personal journal, powered by PKHeX.

Topics

Resources

Stars

19 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages