๐Ÿ›‚ Guest passport controlCURRENT MAIN ยท EXPERIMENTAL

Give your
CPU a
passport.

Linux, Windows and library-free macOS guests visit an ARM64 Mac. UNIVERSE decodes their instructions and translates supported OS calls itself.

โšก Own loaders + CPU execution ยท optional ARM64 JIT ยท no QEMU, Wine or Rosetta.
Linux x86-64 and RISC-V, AArch64, Windows PE32+ and macOS Mach-O guests orbit the UNIVERSE runtime. Verified host: ARM64 macOS.
3 guest CPUsx86-64 / RISC-V + F/D subset / AArch64
3 guest formatsELF64 / PE32+ / MACH-O64 SUBSETS
ARM64 JITOPTIONAL ยท VERIFIED ON MACOS
Open sourceAPACHE-2.0 / BUILT IN ZIG
๐Ÿช 01 / A small interplanetary trip

Foreign code.
Real execution.

An ELF, PE or library-free Mach-O binary enters. UNIVERSE decodes its instructions and translates its OS calls on an ARM64 Mac.

A different destination
for your machine code.

These are recorded outputs from real, source-built guests in our local regression suite. Pick an example to see its command and result.

  1. 01Load the binary
  2. 02Decode into UIR
  3. 03Execute the guest
UNIVERSE / VERIFIED EXAMPLES
# host: Apple M2 ยท ARM64 macOS 26.6
# guest: static Linux x86-64 ELF64

$ ./zig-out/bin/universe artifacts/guests/x86_64/hello-asm
Hello from x86-64 Linux!
๐ŸŒ Fresh arrivals / Real downloaded apps

Internet binaries.
Mac destination.

Official Linux and Windows x86-64 releases, unchanged. JSON, text, file searches, BusyBox utilities, shell scripts, external pipelines and archive workflows run on Apple M2 in both interpreter and JIT modes. Build current main and download the verified apps โ†—.

LINUX โ†’ ARM64 MAC

jq 1.8.2

Filter JSON, add decimal prices, sort Unicode names and read real files.

JSON / STDIN
printf '{"answer":42}\n' |
  ./zig-out/bin/universe \
  artifacts/public-apps/jq '.answer'
VERIFIED OUTPUT 42
LINUX โ†’ ARM64 MAC

ripgrep 15.2.0

Search text with regexes, print line numbers and scan directories with two guest workers.

TEXT / STDIN
printf 'alpha\nbeta\ngamma\n' |
  ./zig-out/bin/universe \
  --allow-files \
  artifacts/public-apps/rg --threads 1 \
  --color never -n '^(alpha|gamma)'
VERIFIED OUTPUT 1:alpha ยท 3:gamma
LINUX โ†’ ARM64 MAC

7-Zip 26.03

Create ZIP and threaded 7z archives, extract folders, preserve timestamps and hash real files.

ARCHIVE / FILES
./zig-out/bin/universe \
  --allow-files \
  artifacts/public-apps/7zzs a \
  -tzip -mmt=off -mx=1 \
  artifacts/universe-docs.zip README.md
VERIFIED RESULT ZIP + threaded 7z round trips โœ“
WINDOWS โ†’ ARM64 MAC

7-Zip 26.03 / Windows

Run the original Windows executable. ZIP/7z round trips, Unicode filenames and hashes work.

WINDOWS EXE / FILES
python3 scripts/public-apps.py --windows
./zig-out/bin/universe \
  --allow-files \
  artifacts/public-apps/7za.exe a \
  -tzip -mmt=off -mx=1 \
  artifacts/windows-docs.zip README.md
VERIFIED RESULT 34 workflows across both engines โœ“
LINUX โ†’ ARM64 MAC

fd 10.5.0 / File finder

Find files, directories and symlinks. Unicode names, ignore rules, exact paths and two-thread searches pass.

FIND / REAL SOURCE FILES
./zig-out/bin/universe --allow-files \
  --max-instructions 30000000 --timeout-ms 30000 \
  artifacts/public-apps/fd --threads 2 \
  --color never --type f --extension c . examples
VERIFIED RESULT 19 file-search workflows per engine โœ“
LINUX โ†’ ARM64 MAC

BusyBox 1.35.0 / Utility kit

Format, filter, hash and copy real files. Run selected shell scripts, external pipelines, signal traps and background jobs. Internal null/zero devices and synthetic /proc/mounts do not expose host device or mount tables. Try guest devices + a background job โ†—

UTILITIES / ORIGINAL BINARY
./zig-out/bin/universe \
  artifacts/public-apps/busybox \
  printf '%s:%04d\n' hello 42
VERIFIED OUTPUT hello:0042
DYNAMIC LINUX โ†’ ARM64 MAC

GNU Hello + coreutils Debian / glibc 2.41

Run unchanged apps with their original Linux libraries. Greetings, sorting, hashes, simple and long listings, and file metadata pass. Try dynamic Linux apps โ†—

DEBIAN APP / ORIGINAL LIBRARIES
python3 scripts/debian.py
./zig-out/bin/universe --allow-files \
  --sysroot artifacts/debian-hello-amd64/sysroot \
  artifacts/debian-hello-amd64/sysroot/usr/bin/hello
VERIFIED OUTPUT Hello, world!

SHA-256 pinned downloads ยท 334 static Linux + 118 Debian/glibc + 34 Windows checks pass across both engines ยท CLI scope. Windows denied-access exits now run the app's own C++ cleanup and catch code. Linux guest threads also extract the Windows release through UNIVERSE itself. GUI apps and general app compatibility are future destinations.

๐Ÿงญ 02 / The current flight manifest

Which worlds
can we reach?

Working examples, honest boundaries. Execution below is verified on Apple M2 / macOS 26.6 ARM64.

Guest Format Verified examples Level
๐ŸŒ jq + ripgrep + 7-Zip + fd + BusyBox / x86-64 Static ELF64 Official Linux binaries: JSON/text processing, threaded file searches, Unicode/filter/ignore paths, ZIP/7z archives, hashing, BusyBox utilities/file copies, virtual identity, selected shell scripts, external commands and error exits CLI workflows
๐Ÿ“ฆ 7-Zip / Windows x86-64 PE32+ Official unchanged binary: 34 archive/hash/error workflows pass, including C++ cleanup and catch on denied access CLI workflows
๐Ÿง Linux / x86-64 ELF64 Assembly, core C fixtures, PIE, static musl and pthread TLS/mutex/condition/join checks; MMX integer and SSSE3 forms, XMM bridges and floating conversions, bounded RCP/RSQRT, PUSHFW/PUSHFQ, byte-checked streaming stores and masks, POPCNT/BSWAP, SSE4.2 CRC32C/PCMPGTQ and selected SSE2โ€“SSE4.1 suites Executed
๐Ÿ”— musl / x86-64 + AArch64 + RISC-V LP64 Dynamic ELF64 / PIE Optional DSO, constructor and single-thread TLS fixture Experimental
๐Ÿง Linux / RISC-V ELF64 Ten C fixtures in both integer variants, word/doubleword atomics and musl pthreads Executed
๐Ÿง Linux / AArch64 ELF64 Integer/NEON fixtures, 8,448 TBL/TBX/MLA/MLS queries per engine matching native ARM64 bytes, checked LDAR/STLR and musl pthread pipe transfers Executed
๐ŸชŸ Windows / x86-64 PE32+ Terminal input/control callbacks, shared file views, fixed/movable local memory, message diagnostics, current/temp directories, logical C drive, directory/link reparse metadata, file/stream enumeration, loaded module paths, UTF-8/UTF-16 conversion, virtual CPU/memory and disk-space queries, file mutations/metadata/times, calendar/local clocks, guest DLLs/TLS, OLEAUT32/USER32/ADVAPI32 subsets, legacy CRT and single-thread events/semaphores/waits/locks Executed
๐Ÿงฐ BusyBox / x86-64 Static ELF64 Selected text + file applets, including grep, sed and touch Applet subset
๐Ÿ—ƒ๏ธ SQLite / x86-64 Static ELF64 Persisted transactions, rollback, VACUUM, native reopen and lock contention Batch CLI subset
๐ŸŽ macOS / x86-64 + ARM64 Mach-O64 Five library-free console, argv/env, memory and file fixtures Executed

Partial compatibility. No complete CPU ISA, arbitrary app compatibility or full shell functionality is claimed. Linux host builds are cross-compiled; execution there is unverified. This page follows the v0.2.1 release and current main. File mutations require --allow-files.

Read the exact boundaries โ†—
๐Ÿงฌ 03 / Under the flight deck

One shared
execution core.

Architecture-specific decoders feed a small universal IR. Checked guest memory, a Zig interpreter and a native ARM64 register-block JIT do the execution.

LOADELF + PE + Mach-O
Validated bytes
DECODE3 guest CPUs
Explicit operands
UIRTyped operations
Shared execution
EXECUTEInterpreter + JIT
ABI translation

The JIT is optional. It accelerates our measured RISC-V workload and slows down the measured x86 and AArch64 cases.

See the actual measurements โ†—

Follow every instruction

Step, set a breakpoint, inspect registers, dump UIR and trace syscalls.

Built here, in Zig

The loaders, decoders, guest memory, interpreter and JIT belong to UNIVERSE.

Files stay opt-in

Guest file access is denied by default. Tested Linux file mutations require --allow-files.

๐Ÿš€ 04 / Ready for liftoff

Your first
foreign guest.

Clone the project, build the runtime and compile the checked-in guests. Then send a Linux x86-64 binary through UNIVERSE.

Open the launch manual โ†—
ZIG 0.16.0 + PYTHON 3
VERIFIED HOST / ARM64 MACOS 26.6
MACOS ARM64 RELEASE BUNDLE AVAILABLE
TERMINAL / QUICK START
git clone https://github.com/OthmaneBlial/universe.git
cd universe
zig build -Doptimize=ReleaseSafe
python3 scripts/fixtures.py
./zig-out/bin/universe artifacts/guests/x86_64/hello-asm
EXPECTED OUTPUT
Hello from x86-64 Linux!
โœจ 05 / A long way to explore

The universe
is still expanding.

The core idea works. Broader application compatibility is the next expedition: more instructions, richer OS behavior and real programs driving each regression.

Follow the roadmap โ†—
Broader CPU / SIMD coverageNEXT
Broader dynamic guests + Linux processesNEXT
Remaining Windows APIs / exception handlingEXPLORING
macOS dyld / shared-library coverageEXPLORING
Performance + security reviewCONTINUING