Skip to content
PORTSNATIVE.
HomeCatalog
Web GamesEmulatorsToolsNews
PORTSNATIVE.

A catalog for discovering ports and related projects. We link to official sources and do not host original game files.

ExploreCatalogMy list
InformationAbout usSuggest a portSupportDonationsLegal notice
© 2026 PortsNative
Back to catalog
EmulatorJS
PORTSNATIVE

EmulatorJS

EMULATORACTION / ADVENTUREWEBBETA

EmulatorJS

Emulador Web Multi-Consola (NES, SNES, GBA, N64, PS1, Arcade)

OriginMulti-consola

TechnologyCross-platform native emulator (JIT / dynamic)

Available forWeb

View official project

About the project

Emulator indexed on PortsNative optimized to run titles from Multi-consola on Web. Offers high compatibility, graphic enhancements, and modern controller support.

Official project information

Author's original READMEOpen on GitHub ↗
<div align="center"> <img width="300" src="docs/Logo-light.png#gh-dark-mode-only" alt="EmulatorJS Dark Mode Logo"> <img width="300" src="docs/Logo.png#gh-light-mode-only" alt="EmulatorJS Light Mode Logo"> <br>

Self-hosted JavaScript emulation for various systems.

License: GPLv3 Website Usage Docs Configurator Live Demo Contributors

Join our Discord server:

Discord Badge

</div>

Getting Started

Supported Systems

EmulatorJS supports a wide variety of legacy consoles and arcade machines. For the complete list of supported cores, please visit our Cores Documentation.

Versioning Guide

We use a specific versioning system to help you choose the right build for your needs:

  1. Stable - The most current release. Both code and cores are tested before release. Updated when new versions are released on GitHub. This is the default version on the Demo.
  2. Latest - Contains the latest code but uses stable cores. Updated whenever the main branch is updated. This version will often be more broken than nightly
  3. Nightly - Contains the latest code and the latest cores. Cores are updated daily. This version is not recommended for production use as it is the main development branch.

CDN Integration

EmulatorJS provides a public CDN at https://cdn.emulatorjs.org/. You can access any version by setting the data path and loader.js accordingly.

// Example Configuration
const EJS_pathToData = 'https://cdn.emulatorjs.org/<version>/data/';
// Replace <version> with: stable, latest, nightly, etc.

Development

To run the project locally for development:

  1. Open a terminal in the root directory.
  2. Install dependencies:
    npm i
    
  3. Start the server/minification:
    npm run start
    
  4. Open http://localhost:8080/ to view the demo.

Note: Minify your script files before deploying to a production server to optimize load times and bandwidth. See Minification Docs.


Community & Support

3rd Party Integrations

EmulatorJS is built as a library/plugin, not a standalone website (therefore, no Docker container). For projects that utilize EmulatorJS, check out our 3rd Party Integration List.

Issues & Reporting

If you encounter an issue, please open an Issue on GitHub. Include as many details as possible, including your browser console logs.

When reporting bugs, please specify the version you are using (Stable/Latest/Nightly).

Support the Project

This project is free and ad-free. The demo page may show occasional ads to help with hosting costs, but you can support development directly via Patreon.


Ai Policy

This project has a policy when it comes to both issues and pull requests. If you are looking to contribute using Ai, please read through CONTRIBUTING.md first.

No AI-written issues. Do not use AI at ANY point in the issue process - not when writing, drafting, diagnosing, styling, etc. AI-written issues may look detailed, but they tend to overcomplicate the problem and guess at the cause and the fix. That means more work for me, unfortunately.

As an example, "The volume slider doesn't change the volume when I slide it" is more helpful than the same thing in 10x the amount of fancy words with a guessed cause and solution attached. I would rather it be in broken english than an overly-detailed ai generated issue

You can use AI to review an issue you wrote yourself before posting it, but the issue must be written and posted by you. It cannot be written or re-written by an Ai.

People wrote issues (and code!!) without Ai 6 years ago. You can do it now.


Star History

<a href="https://star-history.dera.page/#EmulatorJS/EmulatorJS&Date"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://star-history.dera.page/svg?repos=EmulatorJS/EmulatorJS&type=Date&theme=dark" /> <source media="(prefers-color-scheme: light)" srcset="https://star-history.dera.page/svg?repos=EmulatorJS/EmulatorJS&type=Date" /> <img alt="Star History Chart" src="https://star-history.dera.page/svg?repos=EmulatorJS/EmulatorJS&type=Date" /> </picture> </a> <!-- Link Definitions -->
Read official guide
CALIFICACIÓN
—
Loading votes…
Advertisement

PROJECT FILE

Project type
EMULATOR
Genre
Action / Adventure
Status
beta
Original platform
Multi-consola
Technology
Cross-platform native emulator (JIT / dynamic)
Version
—
Updated
Oct 25, 2026

Target platforms 1

Web
Play in Browser
Advertisement