Skip to content

Releases: natureglass/Brewser

Brewser v0.1.90 - A tinkerer-first web runtime for Nintendo Switch

Choose a tag to compare

@natureglass natureglass released this 17 Aug 13:53

Brewser logo

Brewser is a homebrew web runtime and app platform for the Nintendo Switch — a real V8 + Skia + WebGL2 engine running natively on the Tegra X1, built for the kind of web apps Chrome can't reach. Browse the community catalogue, launch web apps straight from your console, and build your own with the same web stack you already know.

This is the first stable public release. 🎉

✨ Highlights

  • Real V8 JavaScript engine with JIT, verified on actual CFW hardware — not an interpreter, not a wrapper
  • WebGL2 rendering via Mesa/Nouveau — the full curated Three.js demo suite runs on-device
  • App catalogue at [brewser.io](https://brewser.io/) — discover and launch community-built web apps
  • Open submissions at [brewser.io/submit](https://brewser.io/submit/) — publish your own apps through the automated pipeline (every submission passes a security scan before publishing)
  • Audio & video decoding — media playback works out of the box
  • WebUSB support — your web apps can talk directly to USB hardware plugged into the dock: microcontrollers, MIDI gear, dev boards, and whatever else you're tinkering with
  • Forwarder generation — create per-app launcher entries in hbmenu straight from your console, so your favorite web apps sit alongside your other homebrew
  • Google sign-in via device-code flow — pair on your phone, stay signed in on console
  • Cloud saves & ratings — app progress and community feedback, synced through brewser.io
  • Built on a heavily extended fork of [nx.js](https://github.com/TooTallNate/nx.js)

📦 Requirements

  • Nintendo Switch running Atmosphère CFW — tested on Atmosphère 1.10+ (older versions may work, but are untested)
  • microSD card with a working hbmenu setup
  • Internet connection (for the catalogue, sign-in, and cloud features — local apps work offline)

🚀 Installation

  1. Download brewser.nro from the assets below
  2. Copy it to sd:/switch/brewser.nrouse this exact path (the optional forwarder below depends on it)
  3. Launch it from the Homebrew Menu

Tip: For best performance, launch hbmenu in full-memory application mode (hold R while starting a game) rather than applet mode — or use the forwarder below.

🏠 Optional: Home Menu forwarder (NSP)

Want Brewser on your home screen like a regular title? Install brewser-forwarder.nsp from the assets below with your favorite installer (DBI, Awoo, Goldleaf…). It launches Brewser directly in full application mode — maximum memory, best performance, no hbmenu detour.

Before you install, know the deal:

  • Requires sigpatches — if you get a "Signature Fake" warning or the title crashes on launch, your sigpatches are missing or outdated for your firmware/Atmosphère version. This is a setup issue on your end, not a Brewser bug 🙂
  • The forwarder expects the NRO at exactly sd:/switch/brewser.nro — don't move or rename it
  • System firmware updates can break forwarders; if that happens, check back here for an updated NSP
  • The NRO via hbmenu is always the fallback that just works

🧪 Nightlies vs. releases

⚠️ Known issues

  • Some WebGL extensions are not yet implemented; conformance work is ongoing
  • Unity WebGL 2 exports are not yet fully tested, support is limited (WebGL 1 exports work)
  • Rendering under the Citron emulator may be incomplete or incorrect — the emulated GPU doesn't fully reproduce the Mesa/Nouveau stack Brewser runs on. Real hardware is the reference platform; if something looks wrong in an emulator, verify on a real Switch before reporting it

🔐 Checksums

brewser.nro: ed50104a5dd906656253e75d0faef829d162bc6377fc58505ae97a2beadb107d
brewser-forwarder.nsp: c4577bc6f5f4676e0ef6be313eab5ad9162fbf731067229211daca91f28ddd1a

🙏 Credits

Brewser stands on the shoulders of [nx.js](https://github.com/TooTallNate/nx.js) by TooTallNate, [Atmosphère](https://github.com/Atmosphere-NX/Atmosphere), V8, Skia, Mesa/Nouveau, and libuv — and on the wider Switch homebrew community.

⚖️ Disclaimer

Brewser is a homebrew application for consoles running custom firmware. It is not affiliated with, endorsed by, or associated with Nintendo. Use CFW at your own risk.


Found a bug? [Open an issue](https://github.com/natureglass/Brewser/issues) · Built something cool? Submit it at [brewser.io/submit](https://brewser.io/submit/) · Say hi on the GBAtemp thread