๐Ÿฆ€Written in Rust

Havy OS

A RISC-V Operating System in Your Browser

A hobby operating system written in Rust, running on RISC-V 64-bit architecture. Features multi-core SMP, WebGPU graphics, TCP/IP networking, and a WASM runtime for user applications โ€” all running entirely in your browser via WebAssembly.

v0.1.52Latest Version
RISC-VArchitecture
16Max CPU Cores
Havy OS - Live Terminal
Starting...

Powerful Features

Everything you need for a complete operating system experience in the browser

Multi-Core SMP

True symmetric multiprocessing with up to 16 hardware threads via SharedArrayBuffer and Web Workers.

WebGPU Graphics

Hardware-accelerated rendering with zero-copy framebuffer access and smooth 60 FPS display.

TCP/IP Networking

Full networking stack via WebTransport relay supporting TCP, UDP, DNS, and HTTP/HTTPS.

WASM Runtime

Sandboxed WebAssembly runtime for user applications with system call interface and IPC.

Browser Filesystem

Persistent storage via Origin Private File System (OPFS) with 9P protocol for VM access.

Audio Support

WebAudio API integration for boot sounds and system audio at 48kHz sample rate.

Get Started in Seconds

Run the VM from command line or integrate into your React application

Quick Run (npx)

bashTerminal
# Run with npx (no installation needed)
npx virtual-machine --sdcard https://github.com/trust0-project/havy-os/releases/download/v0.1.53/sdcard.img --harts 1

CLI Options

bashAvailable Flags
--sdcard, -s    Path or URL to SD card image (required)
--harts, -n     Number of CPU cores (default: auto)
--mount         Mount host directory via VirtIO 9P
--net-webtransport  WebTransport relay URL
--cert-hash     Certificate hash for self-signed certs
--enable-gpu    Open GUI window for display
--debug         Enable debug output

Available Shell Commands

CommandDescription
lsList files and directories
catDisplay file contents
echoPrint text to console
pwdPrint working directory
cdChange directory
mkdirCreate a directory
rmRemove a file
psList running processes
htopInteractive process viewer
pingSend ICMP packets
wgetDownload from web
nslookupDNS lookup
ipNetwork configuration
dmesgKernel messages
sysinfoSystem information
shutdownPower off the system

System Architecture

From browser APIs to user applications

Browser
WebGPU
WebAudio
WebTransport
OPFS
โ†“
WASM Virtual Machine
RISC-V Emulator
SMP Scheduler
VirtIO Devices
โ†“
Havy Kernel
Memory Mgmt
Scheduler
TCP/IP Stack
Filesystem
โ†“
User Applications (WASM)
Shell
ls, cat, wget
ping, htop
Custom Apps