# copy/v86

x86 PC emulator and x86-to-wasm JIT, running in the browser

Repository: https://github.com/copy/v86
Canonical: https://ross.abutalabs.com/products/v86
Homepage: https://copy.sh/v86/
Language: JavaScript
License: BSD-2-Clause
License Family: permissive
Topics: emulator, virtualization, x86, wasm
Last push: 2026-08-27T00:24:13+00:00

## Health v2 (maintenance only)
Score: 86/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 99, release rhythm 60, longevity 100
- inputs: {"age_days": 4684, "days_push": 7, "days_rel": 7, "gap_med": null, "n_releases_24m": 1}
- flags: prerelease_only
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 23424, forks 1879 (observed 2026-08-28T04:11:34.888210+00:00)

## What it is
v86 is an x86 PC emulator written in JavaScript that translates x86 machine code to WebAssembly at runtime via a JIT compiler, running entirely in the browser. It emulates a full set of PC hardware (CPU, FPU, VGA, IDE, network card, sound card, etc.) and can boot real operating systems like Linux, Windows 98, FreeBSD, and FreeDOS.

## Use cases
- run old operating systems in the browser
- boot linux in a web page
- emulate dos and windows 95 without installing anything
- test 32-bit x86 software in a sandbox
- embed a virtual machine in a website
- run retro os demos like windows 98 or kolibrios
- sandbox untrusted x86 binaries in the browser

## When to choose
- you need to run 32-bit x86 operating systems or software directly in a browser with no plugins
- you want a lightweight, dependency-free emulator for demos, education, or testing
- you need to sandbox legacy x86 code in a web environment

## When to avoid
- you need 64-bit, multicore, or modern instruction set support (v86 is roughly Pentium 4 level, 32-bit only)
- you need high performance for demanding workloads - wasm translation is slower than native virtualization
- you need accurate emulation of missing features like task gates, debug registers, or some FPU/SSE exceptions

## Facets
- artifact type: library
- maturity: active
- function: simulation, wasm, graphics, networking, audio-processing
- domain: simulation, developer-tools, web-development, operating-systems, cross-platform
- platform: browser, wasm
- tags: x86-emulator, pc-emulator, virtualization, jit-compiler, wasm-jit, os-emulation, retro-computing, in-browser-virtualization, javascript, nodejs, web

## Member repositories
- copy/v86 (main) score 86

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:11:34.888210+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T16:56:28.679748+00:00, confidence not recorded.
  - readme: https://github.com/copy/v86 (fetched 2026-08-28T04:11:34.888210+00:00, sha cc6011d9cfc8)
  - homepage: https://copy.sh/v86/ (fetched 2026-08-29T07:54:40.431850+00:00, sha 6588c93e1904)
  - registry_npm: https://registry.npmjs.org/v86 (fetched 2026-08-29T07:54:40.441106+00:00, sha 254251de3abe)
- Data as of 2026-08-30T08:39:29.467469+00:00.
