PKSafe is a Pokémon save editor for Android, built on top of PKHeX — the most complete Pokémon core-series save editor available.
Download: see the Releases page for the latest APK.
- Load save files from any folder or individual file on your device via Android's Storage Access Framework (SAF)
- Write changes back to the original file in-place — no copy-export needed
- Manage multiple watched folders and individual files from the folder manager
- Supports all major save formats: GB/GBC (Gen 1–2), GBA (Gen 3), NDS (Gen 4–5), 3DS (Gen 6–7), Switch (Gen 8–9), and more
- Cross-fade hero card animation when scrolling between saves on the home screen
- Emulator save auto-detection — automatically finds Pokémon saves from:
- Eden (Switch Gen 8–9): grant access to your Eden folder and the app scans
nand/user/save/automatically - MelonDS (DS Gen 4–5): point to your ROM or saves folder;
.savfiles are picked up automatically - Azahar (3DS Gen 6–7): scans
sdmc/Nintendo 3DS/automatically for save files - RetroArch (GBA/GBC Gen 1–3): point to your saves folder;
.srmfiles are picked up automatically
- Eden (Switch Gen 8–9): grant access to your Eden folder and the app scans
- Full box grid rendered with SkiaSharp — fast and smooth on any Android device
- High-quality Pokémon HOME sprites loaded on demand and cached for offline use — form-aware (Vivillon patterns, Rotom appliances, alternate formes, gender variants, and more)
- Animated Pokémon Showdown sprites, also cached for offline use
- Bounce/spring animation when the cursor lands on a new slot
- Slide transition between boxes (left/right)
- Navigate boxes with on-screen buttons or a connected gamepad (L/R shoulder buttons)
- Cursor highlight and slot selection fully gamepad-driven
- Optional legality badge — green/red dot on each slot showing at a glance whether a Pokémon is legal
- Game-specific icons for each save (Ruby, Sapphire, Emerald, FireRed, LeafGreen, Platinum, and more)
- Animated 3D sprite display pulled from the Pokémon Showdown CDN — form-aware (e.g. Giratina-Origin, Meloetta-Pirouette, Vivillon variants)
- Sprites cached to disk after first load for fully offline reuse
- Shiny variants displayed automatically
- Hexagonal stat radar chart with smooth morph animation when switching Pokémon
- Species name, level, types, ability, held item, and moves shown at a glance
- Legality indicator — instantly see if a Pokémon is legal
- Full PKM editor: species, nickname, OT, moves, stats, IVs, EVs, nature, ability, ball, and more
- Ten display languages: Japanese, English, French, Italian, German, Spanish, Spanish (LATAM), Korean, Simplified Chinese, Traditional Chinese
- Search across all boxes in the active save by species name
- Filter by shiny
- Tap any result to open it directly in the editor
- Browse the full built-in Mystery Gift database
- Filter by title, species, or compatibility with the active save
- Inject any compatible gift into the first available box slot
- Grid of all 1,025 base species rendered with SkiaSharp — virtual scroll keeps it smooth regardless of dex size
- Species appear as silhouettes until unlocked; scan any loaded save to mark every Pokémon you own as collected (additive — unlocks are never revoked)
- Each slot shows a type-tinted card with the species' type colour, Pokémon HOME sprite, and dex number
- Footer bar shows the selected species' name, number, and type pill(s)
- Completion stats per generation displayed on the second screen (AYN Thor)
- L1/R1 jumps between generations (Kanto → Johto → … → Paldea)
- Full gamepad navigation; Select scans the active save
- Cross-save storage for transferring Pokémon between different saves
- Drag-and-deposit workflow from the box browser
- Animated intro reel plays on first launch with a floating Pokémon sprite per feature slide
- Per-slide radial glow, staggered bullet points, and an animated progress bar
- Finale: Pokémon HOME sprites fly in from the screen edges and form a 5×4 grid, which zooms out to reveal the PKSafe logo card
- Background orchestral Pokémon theme music fades out as the wizard begins
- Tap anywhere or hit Skip to jump straight to setup
- Display Language — affects species, move, and ability names throughout the app
- Shiny Sprites — toggle alternate-colour sprites for shiny Pokémon
- Adaptive Radar Scale — scale the stat chart to the Pokémon's best stat so weaker Pokémon fill more of the graph (off = fixed 0–255 scale)
- Legality Badges — show a green/red dot on each Pokémon in the box view
- Light / Dark Theme — instant live switching; no restart required
- Manage Save Folders/Files — add or remove folders and individual files scanned on startup
- Download HOME Sprites — bulk-download and cache all Pokémon HOME-style sprites (~120 MB) for offline use
- Download Animated Sprites — bulk-download and cache all animated GIF sprites (~200 MB) for offline use
- Emulator Save Finders — one-tap auto-detection for Eden, MelonDS, Azahar, and RetroArch saves
- Full D-pad navigation on the home screen, box browser, box editor, settings, database, and mystery gift pages
- A/B/X/Y and shoulder buttons mapped throughout the app
- L1/R1 to switch boxes; R3 to play the Pokémon cry for the current slot
- Animated dot-grid background on the hero card panel
- Second display shows the box grid independently
- Cursor position and box state kept in sync across both screens
Coming soon.
PKSafe is a .NET MAUI application targeting Android, built with .NET 10.
# Build the Android APK
dotnet build PKHeX.Mobile/PKHeX.Mobile.csproj -f net10.0-android -c Release
# Or build the full solution (Core + Mobile)
dotnet build PKHeX.slnCI automatically publishes a signed APK to GitHub Releases on every push to master.
- .NET 10 SDK with MAUI workload (
dotnet workload install maui-android) - Android SDK (API 26+)
PKHeX.Core/ # Core library — all game logic, legality, save parsing (no GUI deps)
PKHeX.Mobile/ # .NET MAUI Android app (PKSafe)
Pages/ # ContentPages: MainPage, GamePage, SettingsPage, FolderManagerPage, ...
Services/ # IFileService, SaveDirectoryService, SpriteCacheService, HomeSpriteCacheService, EmulatorSaveFinderService, ...
Platforms/Android/ # Android-specific: MainActivity, AndroidFilePicker, GamepadRouter
PKHeX.Drawing.Mobile/ # SkiaSharp sprite rendering helpers
PKHeX.WinForms/ # Original Windows desktop app (unchanged)
PKHeX.Core is used directly as a project reference — no modifications. All Android-specific code lives in PKHeX.Mobile.
We do not support or condone cheating at the expense of others. Do not use significantly hacked Pokémon in battle or in trades with those who are unaware hacked Pokémon are in use.
This project is not affiliated with Nintendo, Game Freak, or The Pokémon Company.
- PKHeX by kwsch — core save editing engine (GPLv3)
- PokeAPI Sprites — Pokémon HOME-style sprites (CC0)
- Pokémon Showdown — animated sprite CDN
- pokesprite — shiny sprite collection (MIT)
- QRCoder — QR code generation (MIT)
- SkiaSharp — 2D graphics for MAUI
- Phosphor Icons — icon font used throughout the UI (MIT)
- Pokémon Legends: Arceus sprites from the National Pokédex Icon Dex project
- Welcome screen music: "Pokémon: Red & Blue Title Theme (Fanmade Orchestration)" by MawsMash — used for atmosphere in the first-run welcome screen. Original composition © Game Freak / Nintendo / The Pokémon Company.