The first file anyone encounters in Switch homebrew is hbmenu.nro. Here's what it actually is, written for normal humans without dumbing it down.
hbmenu.nro is the launcher menu for Switch homebrew, opened from the Album app.
Drop it at the root of your SD card → boot Switch → open Album → a menu appears → from there you can launch other .nro files (homebrew apps).
NRO = Nintendo Relocatable Object. It's the executable format for apps that run on Switch, built using the unofficial devkitPro toolchain. NROs are loaded by a homebrew launcher (hbmenu) running under Atmosphère CFW — Atmosphère hooks the boot process so that Album launches hbmenu instead of the screenshot viewer.
The .nro file itself is just data on your SD card. The Atmosphère boot stack is what actually modifies the console's boot to enable it.
Nintendo built a lightweight execution environment called applet mode into the Album app. Atmosphère hooks this — when Atmosphère is booted (via RCM payload, modchip, or other means) and hbmenu.nro sits on the SD card, certain key combos (e.g. holding the home button while opening Album) route Album to hbmenu instead.
This pipeline traces back to the fusée-gelée era exploits and successors. Nintendo is aware. Bans hinge primarily on what configuration you run Atmosphère in (SysMMC = low risk, EmuMMC = high) and what you do online — not on hbmenu.nro existing.
.nro file by itself is inert. To launch it you need Atmosphère booted, and the configuration you boot Atmosphère in (SysMMC vs EmuMMC) is what determines ban risk.
Our Switch loader works with two files: hbmenu.nro + License.txt:
hbmenu.nro — the launcher menu (this article)License.txt — your secretchat.tel purchase keyFlow: Album → Loader menu → Apex (auth check OK → game launches). Atmosphère is required as the underlying CFW, but you run it on SysMMC, not EmuMMC.
Not by itself. Nintendo's telemetry sees that "homebrew was launched" but doesn't ban for that alone — it would sweep up legit hobby devs. Bans mostly come from EmuMMC + obvious online cheating. Running Atmosphère on SysMMC avoids the EmuMMC fingerprint entirely. See EmuMMC vs SysMMC.
Yes. Launching hbmenu.nro from Album requires a CFW boot path — Atmosphère is the standard. Stock OS alone can't open hbmenu through Album. Run Atmosphère on SysMMC (not EmuMMC) to keep ban risk low.
If you're using secretchat.tel, grab our loader build — it's customized for Apex (different internals from the generic version).
hbmenu.nro + License.txt (you build the Atmosphère environment yourself)