Skip to content

nxnative

Turns your own Nintendo Switch game files into an iPhone, iPad or Mac app using a script.

Stars
11.2k
Forks
1.8k
Licence
MIT
Language
Python
Last update
4 days ago
Type
Dev tool

What it is

nxnative is a Python script that takes Nintendo Switch game files you already own (NSP files plus your prod.keys) and packs them into an unsigned IPA you can sideload onto an iPhone or iPad, or a Mac app. The README says it is not an emulator: the game's own code runs directly on the Apple chip, with Switch graphics rebuilt on Metal. Nothing from any game is included in the repository.

  • Build an IPA from a folder of your own Switch game files and sideload it with AltStore, Sideloadly or LiveContainer
  • Build a Mac app of a game with the --platform mac-app option
  • Pack a Switch 2 game such as Donkey Kong Bananza from a folder of its files for the Mac
  • Study how the project reuses shader and kernel reference work from other open-source projects

Great for

  • People who own the Switch games they want to run and are comfortable with Terminal
  • Developers curious about native-execution approaches to console games
  • Mac users who want a Mac app built from their own game files
  • Users with a recent iPhone 15 Pro or newer, or an M1 iPad, running iOS or iPadOS 26

Not ideal for

  • Anyone without a Mac, since the build requires macOS 26.6 or later and Xcode 27.2
  • Anyone with an older iPhone, because the games' BC-compressed textures are unreadable on it
  • People who want no command line, since the README points them to separate community Mac apps for that instead
  • Anyone wanting a game that isn't on the tested list, since the README says other games may not start
Step-by-step guide: how to use nxnativeInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Clone and build from source

    You'll need: Mac with macOS 26.6 or later · Xcode 27.2 · Homebrew · Python 3.12 or newer (arm64 build) · prod.keys from your own Switch

    Install the Metal toolchain

    xcodebuild -downloadComponent MetalToolchain

    Clone the repository

    git clone https://github.com/seedds/nxnative.git && cd nxnative

    Install Homebrew tools

    brew install xcodegen zstd glslang

    Install Python packages

    python3 -m pip install lz4 "capstone>=5,<6" fonttools nsz zbic "backports.zstd; python_version < '3.14'"
  2. 2

    Run it

    • Place your game's NSP files (and any update or DLC) in one folder
    • Run python3 scripts/build_ipa_from_nsp.py with the folder path and -k pointing to your prod.keys
    • Find the IPA in the game's folder once the build finishes
    • Install the IPA with a sideloading tool such as AltStore, Sideloadly or LiveContainer
  3. 3

    Get the most out of it

    • Turn on Increased Memory Limit in your sideloading tool if it offers it, since the bigger games need it
    • Use --romfs separate if the game is too big to install, then run the printed command once to copy game files to your phone
    • Add --platform mac-app to build a Mac app instead of an iPhone IPA
    • Read the per-game notes page for tested platforms, progress and known issues

Downloads

Strengths

  • The README documents a step-by-step build with exact commands and a per-game notes page
  • The project credits the open-source projects it builds on, including Ryujinx, LibHac and SPIRV-Cross, with license details
  • It is MIT-licensed and has a large following on GitHub

Trade-offs

  • The first build takes 30–60 minutes and needs about twice the game's size plus 10 GB of free disk space
  • Only a limited set of games is listed as tested, and the README says untested games may produce an IPA that won't start
  • Switch 2 support is tested on the Mac only; iPhone and iPad are untested

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-11-02 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.