About & Technical Architecture
QuakeJS is an Emscripten port of ioquake3 directly to JavaScript and WebGL. It delivers the authentic high-speed bunny hopping, railgun dueling, and rocket jumping physics of Quake III Arena without downloading standalone client software.
Quake III Arena is a trademark of id Software / ZeniMax Media. QuakeJS runs the official demo/shareware PK3 game data.
Keybindings & Input Configuration
| Action | Input / Key | Supported Device |
| ● Move | WASD | Keyboard |
| ● Aim and Fire | Mouse | Keyboard |
| ● Jump | Space | Keyboard |
| ● Weapons | 1-9 | Keyboard |
| ● Scoreboard | Tab | Keyboard |
| ● In-Game Menu. | Esc | Keyboard |
Frequently Asked Questions & Save Tips
How does Quake III Arena (QuakeJS WebGL) run in a web browser without downloading? ▾
Quake III Arena (QuakeJS WebGL) is powered by ioquake3 / Emscripten WebGL. It executes code directly inside modern browsers via WebAssembly (WASM) and WebGL 2.0 with hardware acceleration and 60 FPS performance.
How does the save system work and how do I back up my progress? ▾
Game progress is handled through Browser LocalStorage/IndexedDB. Save states are stored inside your browser's private IndexedDB sandbox. Avoid clearing browser cache or cookies to preserve your saves.
Can I use a USB or Bluetooth controller with Quake III Arena (QuakeJS WebGL)? ▾
This port is currently tailored for keyboard and mouse navigation.
Is playing Quake III Arena (QuakeJS WebGL) on PortedToBrowser legal and safe? ▾
Yes. PortedToBrowser.com indexes open-source engine decompilations and verified web sandboxes. We do not host or distribute proprietary game ROMs or copyrighted binaries.
Port Changelog & Updates
Initial verified release in the PortedToBrowser technical index.
Release date: 1998
Genres: Shooter / FPS, Action
Host: continuation-labs.com
Go → Release date: 2022
Genres: Action, Shooter / FPS
Host: flakane.itch.io
Go → Release date: 1996
Genres: Role-playing (RPG), Action
Host: github.io
Go →