NX-Shell is a multi-purpose file manager for the Nintendo Switch. It handles image, archive, and text format file types directly.
Inspired by LineageOS's file manager, NX-Shell uses Dear ImGui on top of OpenGL3 for native 1080p/720p rendering at full vsync-locked 60 fps. It is localized into 12 languages, has custom theming options, and can be used docked or handheld with full touch support.
- File operations: copy, move, delete, rename, create (with Switch keyboard).
- File properties (size, created/modified/accessed timestamps) and sorting (name, date, size).
- Image viewer with caching (BMP, GIF, JPG, PGM, PPM, PNG, PSD, TGA, WEBP).
- Archive extraction (only ZIP support).
- File Preview using hex and plain text (all file types).
- Device browsing: safe, user, system, USB.
- Language support: Japanese, English, French, German, Italian, Spanish, Simplified/Traditional Chinese, Korean, Dutch, Portuguese, Russian.
- Automatic docked (1080p) or handheld (720p) rendering detection with configurable overrides.
- Themes: Dark/Light mode, accent colors, button styles.
- Safe applet mode and self-updating via GitHub.
Requires devkitPro with Switch development packages installed. Dependencies are fetched automatically via CMake's FetchContent.
cmake -B build
cmake --build buildThe output NX-Shell-vX.Y.Z.nro will be in the project root.
- PreetiSketch for the banner.
- Omar Cornut and contributors for Dear ImGui.
- devkitPro maintainers and contributors for libnx, devkitA64, and many other packages used by this project.
- DarkMatterCore for libusbhsfs.
- Sean Barrett for stb_image.
- Grzegorz Kostka for lwext4 and the NTFS-3G developers.

