Play classic Windows games such as Diablo II or Max Payne directly in a browser without installing Windows or emulation software.
Bring your own legally owned game installer, like one bought on GOG, and run it entirely client side.
Contribute a fix for a missing Win32 or DirectX feature that helps every game hitting the same gap.
| jenissimo/bottleship | abeehive/annado | antfu/vite-dev-rpc | |
|---|---|---|---|
| Stars | 75 | 75 | 75 |
| Language | TypeScript | TypeScript | TypeScript |
| Last pushed | — | — | 2026-05-01 |
| Maintenance | — | — | Maintained |
| Setup difficulty | moderate | easy | moderate |
| Complexity | 4/5 | 2/5 | 2/5 |
| Audience | general | vibe coder | developer |
Figures from each repo's GitHub metadata at analysis time.
Needs Bun and a WebGPU-capable browser like recent Chrome or Edge, plus SharedArrayBuffer support.
BottleShip lets you run real, old Windows PC games directly in a web browser. Rather than emulating a whole Windows installation or relying on a source port that someone rewrote, it loads the actual game program file and reimplements the pieces of Windows those old games depended on: Win32, COM, and older graphics and sound systems called DirectDraw, Direct3D, and DirectSound. Those get translated into modern browser technology such as WebGPU for graphics and WebAudio for sound, so everything happens on your machine with no server involved. The project already gets a range of late 1990s and early 2000s titles running, including Re-Volt, Heroes of Might and Magic III, StarCraft, Diablo II, Max Payne, Morrowind, and several Need for Speed and Tomb Raider games, among others, though the project describes itself as early and still rough around the edges. Since only demos and freeware can legally be shared through the project's own library, playing a full commercial game means bringing your own legally purchased copy, often as an installer bought from a store like GOG. Under the hood, the game's executable runs on a modified version of an existing project called v86, which emulates an x86 processor inside the browser using WebAssembly. Everything the game normally asks Windows to do gets intercepted and answered instead by code written in TypeScript and WebAssembly, with graphics calls translated to WebGPU in real time and sound mixed through an audio worklet. Game files, save data, and settings are kept in the browser's own file storage system rather than anywhere on a real disk. To run it yourself, you need the Bun tool along with a browser that supports WebGPU, such as a recent Chrome or Edge. You can also import your own games as a packaged bundle, a plain folder, or in some cases a GOG installer, all handled locally in your browser. BottleShip is free and open source, released under the Apache-2.0 license, and builds on other open-source components including the v86 project. It does not distribute any commercial game files itself.
A browser-based emulator that runs real, old Windows PC games like StarCraft and Morrowind by reimplementing Windows and DirectX on top of WebGPU and WebAudio, no plugins or downloads required.
Mainly TypeScript. The stack also includes TypeScript, WebAssembly, WebGPU.
Use, modify, and distribute freely, including commercially, as long as you credit the original license and note any changes.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly general.
This repo across BitVibe Labs
double-check against the repo, no cap.