js-dos provides a JavaScript API and player for running DOS and Windows 9x programs in a browser or Node. It supports DOSBox and DOSBox-X backends, including Windows 95 and 98 system images through DOSBox-X. Developers can add the player to a webpage from its CDN, install it from npm, or download GitHub releases. A basic player needs static website hosting but no backend, and the page must be served over HTTP rather than opened with the file protocol. Browser IPX networking uses WebRTC-NET for IPX servers, peer and alias connections, and shared network instances. Progress is stored locally in browser storage by default, which may be wiped; cloud saves can be enabled with a secret key. Custom save storage can use filesystem change hooks, and local persistence uses OPFS. All users can read sockdrive storage; subscribers can write to it to save progress and install games. The site describes WebGL-backed accelerated 3Dfx rendering. Mobile support is marked work in progress for v8 and production for v7. A shared secret key grants access to an account’s drives and saves, and simultaneous writing can corrupt them.
Who it is for
js-dos suits developers who want to embed DOS or Windows 9x programs in a browser page or run them in Node. It also offers networking and storage options for projects that need shared sessions or saved game progress.
What is good
- Supports DOSBox and DOSBox-X backends.
- A basic player needs static hosting, not a backend.
- Browser IPX networking supports peer and alias connections.
- Custom save storage can use filesystem change hooks.
- The core features are free.
What to know first
- The page must be served over HTTP.
- Browser storage may be wiped.
- Cloud saves and sockdrive write access require a subscription.
- Mobile support for v8 is work in progress.
Verdict
js-dos offers browser and Node execution, multiple emulation backends, and several networking and storage options. Keep the browser-storage warning in mind, and protect shared secret keys because concurrent writes can corrupt drives and saves.
js-dos plans and pricing
All plansCompared on MS-DOS emulators
- Free plan
- Yes
- Supported host platforms
- web browser, Node.js, mobile browsers
- DOS target versions
- ms-dos
- Disk image formats
- IMG, QCOW2
- Source available
- Yes
