Kandelo runs Unix-like software in your browser.
It’s a multi-process operating system for WebAssembly runtimes. Programs are compiled to WebAssembly and run directly, with no CPU emulation. That means real processes, with fork, pipes, and signals.
Let’s start with examples instead of technical detail, but before we do that, there’s one caveat: Kandelo environments are ephemeral for now. Everything resets on reload. Persistence is the next step.
Now for the examples!
- Script with Bash, Perl, Python, and Ruby
- Install and run a Node.js package
- Make an HTTP request with curl
- Clone a Git repository
- Use SQLite
- Edit a file with VIM
- Edit a file with Nano
- Run a browser-local web app
- Run WordPress with Nginx, PHP, and MariaDB (large)
- Play Doom with sound and mouse support
- Play Quake with sound and mouse support
- Play Nethack
- Render with OpenGL
All the examples run purely in your browser. These are just a beginning. We have more to share in the coming weeks.
I invite you to share your ideas
We want to hear from everyone interested in this project or this tech. What do you care about? What would you like to see?
Have fun with this. If you have an idea, clone the GitHub repo and ask an agent to make what you want. We’ve found porting to be surprisingly straightforward!
For our part, we’ve made local prototypes of video game emulators, game engines, rendering software like TeX Live, and different desktop environments. Once we get a better handle on how to build and rebuild such a large collection of software we plan to share much more.
What will you build?
Please send any and all feedback via GitHub. 🙏
Thank you!