Show HN: Kandelo – a POSIX-compatible multi-process WASM kernel for the browser

Kandelo is an open-source, Wasm-based multi-process kernel that runs POSIX programs in browsers and Node.js.

Kandelo is still experimental, but it already runs a substantial range of existing software.

Do you have use cases for this?

We are trying Kandelo as a new foundation for WordPress Playground which runs server-side WordPress entirely in the browser. Kandelo also looks promising as a sandbox for running agents in the the browser and on the command line. On the side, we've been playing with porting games and desktop environments and even compiling runnable programs within Kandelo.

Yet it feels like there are many possibilities we haven't considered.

How would you like to use something like this?

Demos:

Some notes: The demos have been tested in desktop browsers. Unfortunately, YMMV on mobile today. Some of the disk images are large (~50MB) and may take a while to boot initially.

Main set, with Shell (bash, vim, nethack, and more), Nginx, PHP, WordPress, and Doom:
https://kandelo.dev/20260819-demo/

LÖVE game engine:
https://kandelo.dev/20260819-demo-love/

SNKRX running under LÖVE:
https://kandelo.dev/20260819-demo-love/?vfs=love-snkrx-abi44...

Commander Keen running in DOSBox:
https://kandelo.dev/20260819-demo-dos/?demo=keen

LXDE desktop PoC:
https://kandelo.dev/20260819-demo-lxde/?demo=desktop-lxde

Background

I wanted an authentic OS-level foundation for running systems software in the browser and started this as a vibe-coded exploration. I figured it would end up being too slow and that we would have to offer many different ways to compromise default POSIX behavior to get anything usable. But after weeks of fighting agents, insisting on genuine POSIX compatibility as the default, I was surprised at how well the system worked without those compromises.

Nginx, PHP, Python, Ruby, Redis, and even MariaDB were able to be built using the SDK with minimal hacks.

Then we started porting games, having fun, and playing to see how far we could push it.

Notes on architecture:

There is a central, single-worker kernel, aiming to provide all supportable POSIX syscalls. Each process is a dedicated worker with independent memory. Each process thread is a dedicated worker that shares memory with threads from the same process. Syscalls are done with the process SharedArrayBuffer and the Atomics API. fork() is supported. The system is centered around virtual file system (VFS) images, and the VFS can contain lazy references to programs that may or may not be used. Vim is such a reference in the shell demo.

On GitHub:
https://github.com/Automattic/kandelo




Comments URL: https://news.ycombinator.com/item?id=49378305


Points: 6


# Comments: 2

guid

https://news.ycombinator.com/item?id=49378305

source_url

https://kandelo.dev/20260819-demo/

author_name

brandonpayton

id: 5969
uid: H8IMn
insdate: 2026-08-20 20:05:21
title: Show HN: Kandelo – a POSIX-compatible multi-process WASM kernel for the browser
additional:

Kandelo is an open-source, Wasm-based multi-process kernel that runs POSIX programs in browsers and Node.js.

Kandelo is still experimental, but it already runs a substantial range of existing software.

Do you have use cases for this?

We are trying Kandelo as a new foundation for WordPress Playground which runs server-side WordPress entirely in the browser. Kandelo also looks promising as a sandbox for running agents in the the browser and on the command line. On the side, we've been playing with porting games and desktop environments and even compiling runnable programs within Kandelo.

Yet it feels like there are many possibilities we haven't considered.

How would you like to use something like this?

Demos:

Some notes: The demos have been tested in desktop browsers. Unfortunately, YMMV on mobile today. Some of the disk images are large (~50MB) and may take a while to boot initially.

Main set, with Shell (bash, vim, nethack, and more), Nginx, PHP, WordPress, and Doom:
https://kandelo.dev/20260819-demo/

LÖVE game engine:
https://kandelo.dev/20260819-demo-love/

SNKRX running under LÖVE:
https://kandelo.dev/20260819-demo-love/?vfs=love-snkrx-abi44...

Commander Keen running in DOSBox:
https://kandelo.dev/20260819-demo-dos/?demo=keen

LXDE desktop PoC:
https://kandelo.dev/20260819-demo-lxde/?demo=desktop-lxde

Background

I wanted an authentic OS-level foundation for running systems software in the browser and started this as a vibe-coded exploration. I figured it would end up being too slow and that we would have to offer many different ways to compromise default POSIX behavior to get anything usable. But after weeks of fighting agents, insisting on genuine POSIX compatibility as the default, I was surprised at how well the system worked without those compromises.

Nginx, PHP, Python, Ruby, Redis, and even MariaDB were able to be built using the SDK with minimal hacks.

Then we started porting games, having fun, and playing to see how far we could push it.

Notes on architecture:

There is a central, single-worker kernel, aiming to provide all supportable POSIX syscalls. Each process is a dedicated worker with independent memory. Each process thread is a dedicated worker that shares memory with threads from the same process. Syscalls are done with the process SharedArrayBuffer and the Atomics API. fork() is supported. The system is centered around virtual file system (VFS) images, and the VFS can contain lazy references to programs that may or may not be used. Vim is such a reference in the shell demo.

On GitHub:
https://github.com/Automattic/kandelo




Comments URL: https://news.ycombinator.com/item?id=49378305


Points: 6


# Comments: 2


category: Hacker News
md5:
guid: https://news.ycombinator.com/item?id=49378305
source_url: https://kandelo.dev/20260819-demo/
updated:
image:
author_name: brandonpayton
author_link:
Add Comment
Type in a Nick Name here
 
AI Testing

Autonomous AI API, a cutting-edge platform that leverages advanced AI technologies to enable self-modification and self-repair of its core files. This innovative site utilizes machine learning algorithms to detect and correct errors, ensuring maximum uptime and performance. With its autonomous capabilities, the AI API can adapt to changing requirements, learn from user interactions, and continuously improve its functionality.
Page Views

This page has been viewed 2 times.

Search HNews
Search HNews by entering your search text above.
Category List HNews