Skip to content
SPECIFICTION
Get listed

n64js

github.com

Free plan Web
Visit github.com
Spec score 7.8 #11 of 24 in Nintendo 64 Emulators

What it is

n64js is a free N64 emulator written mostly in pure ES6 JavaScript, with a hosted version on GitHub Pages. It uses WebGL and provides keyboard controls plus a controller-configuration interface. Many ROMs run close to full speed, but graphical problems remain and imprecise cycle counting affects compatibility. Save data can persist through localStorage, with save import and export listed as implemented features. Saving and loading require native Uint8Array base64 methods supported in Chrome or Edge 140+, Firefox 133+, or Safari 18.2+, including iOS. The live site reports Chrome, Firefox, and Safari tested on macOS 13.5; Edge is untested. Low-level audio emulation is implemented, while high-level audio remains in progress. Savestates are listed as a TODO. Debug options include Off, Simple, and Mattias CRT display effects. The MIT-licensed repository also documents Bun scripts for headless emulation and programmatic controller input.

Spec sheet

Purpose
n64js is an N64 emulator written mostly in pure ES6 JavaScript.Read 4 Oct 2026 · github.com
Product
n64js is an N64 emulator written mostly in pure ES6 JavaScript.Read 4 Oct 2026 · github.com
Support
The hosted site invites users to get in touch via the maker’s Twitter account.Read 4 Oct 2026 · hulkholden.github.io
License
The repository includes an MIT license that permits use, modification, distribution, and sale subject to its notice conditions.Read 4 Oct 2026 · github.com
Audio
The repository says low-level audio emulation is implemented and high-level audio emulation is a work in progress.Read 4 Oct 2026 · github.com
Availability
A hosted version is available on GitHub Pages.Read 4 Oct 2026 · github.com
Browser compatibility
The live site reports Chrome, Firefox, and Safari tested on macOS 13.5, with Edge untested.Read 4 Oct 2026 · hulkholden.github.io
Browser requirement
The emulator requires WebGL, which limits the GPUs it can run on.Read 4 Oct 2026 · hulkholden.github.io
Browser requirements
The hosted emulator requires WebGL, and saving and loading require native Uint8Array base64 methods supported in Chrome/Edge 140+, Firefox 133+, or Safari 18.2+ including iOS.Read 4 Oct 2026 · github.com
Compatibility
The project says many ROMs run at full framerate, though most playable ROMs have some graphical issues.Read 4 Oct 2026 · github.com
Controls
The emulator supports static and configurable key bindings, and lists the Gamepad API as an implementation feature.Read 4 Oct 2026 · github.com
Debug features
The emulator offers Off, Simple, and Mattias CRT display effects under Debug → Graphics → CRT.Read 4 Oct 2026 · github.com
Graphics
The repository says graphics use high-level emulation and that many ROMs have graphical issues.Read 4 Oct 2026 · github.com
Headless use
The repository documents Bun scripts for creating a headless emulator and setting controller input programmatically.Read 4 Oct 2026 · github.com
Hosted version
A hosted version is available on GitHub Pages.Read 4 Oct 2026 · github.com
Intended audience
The maker describes the project as a JavaScript emulator showcase and a way to explore what modern browsers can do.Read 4 Oct 2026 · github.com
Known limitations
The README identifies imprecise cycle counting and graphics as compatibility issues and lists savestates as a TODO.Read 4 Oct 2026 · github.com
Origin
The hosted page says n64js is based on Daedalus, an emulator its maker began writing while at university.Read 4 Oct 2026 · hulkholden.github.io
Performance
The project says many ROMs run at close to full speed, though graphical issues remain.Read 4 Oct 2026 · hulkholden.github.io
Save data
The repository lists save persistence through localStorage and save import/export among its implementation features.Read 4 Oct 2026 · github.com

Plans and prices

n64js Free No paid plans or usage limits stated Read 4 Oct 2026 · github.com

Every n64js plan and price →

Strong points and limits

Strong points

  • Free plan with no paid plans stated
  • Hosted version available on GitHub Pages
  • Controller remapping interface included
  • Save import and export are implemented
  • MIT license

Limits

  • Requires WebGL
  • Graphical issues remain across many ROMs
  • Savestates are not completed
  • Edge is untested

Who it suits

n64js suits people exploring browser-based N64 emulation and JavaScript capabilities. It is for users with WebGL-compatible graphics hardware who can work within its compatibility limits.

Verdict

n64js offers a free, browser-hosted N64 emulator with configurable controls and persistent save data. WebGL requirements, graphics issues, unfinished high-level audio, and absent savestates define its current limits.

Where Specifiction places it

Alternatives to n64jsAll alternatives →