Awesome Switch

The switch hacking scene has sprouted a lot of useful tools and documentation, but those can be fairly hard to find due to being posted left and right without a central repository to list it all. But no more! This awesome list will attempt to be a complete list of all the useful things that the switch hacking community created.

If you see something missing, feel free to leave a comment here so I can add it in.



  • SwitchBrew Wiki - A wiki with a lot of information, from SVC docs to file format descriptions.
  • SwIPC - (Almost) complete documentation for the switch’s IPC services.
  • SwIPC diff - Switch IPC changes for major versions between 1.0.0 and 7.0.0




  • libtransistor - A C/C++ toolchain based on clang.
  • libnx - A C/C++ toolchain based on devkitPro/gcc.
  • Megaton-Hammer - A Rust toolchain (surely the best :lenny:)

Language Support

  • PyNX - A Python port, based on libnx.
  • LovePotion - A Lua port, based on libnx.
  • Brew.js - A JavaScript port, based on libnx.


  • RyujiNX - An innovative emulator written in C# (using dotnetcore, supports Windows/Mac/Linux)
  • Yuzu - An emulator written in C++
  • Mephisto - A simple emulator written to assist debugging and reverse engineering.


  • hactool - A tool to view informataion about, decrypt, and extract common file formats.
  • HacDiskMount - Allows to open Switch eMMC RawNand dumps and mount them as a drive letter in Windows
  • switchfs - FUSE scripts for Nintendo Switch files, similar to HacDiskMount but cross-platform.
  • SwIPC - IPC code and documentation generator. Auto-generated from swipc-gen.
  • ilia - An IPC Logger for the switch, so you can spy on all the IPC calls.

Homebrew Launchers

  • twili - A launcher with debugging facilities.
  • hbl - The launcher everybody uses.


  • Atmosphere - A WIP customized firmware for the Switch.
  • Hekate - CTCaer’s mod - A complete NX bootloader reimplementation. Functionally equivalent to Atmosphere’s Fusee.

Reverse Engineering Corner




Useful Plugins

  • FRIEND - An IDA Plugin that (among other things) names system registers.
  • hnight7 - An IDA plugin that fixes system register names in hexray view.
  • Diaphora - A Free and Open Source diffing tool. Use this to match functions with their named equivalent from an SDK binary.
  • idb2pat - Similar to diaphora, generates IDA Pro FLAIR patterns from existing IDB files, which help IDA Pro recognize common functions in compiled programs and automatically rename them for the reverse engineer