This is the entire Firefox browser rendering to a <canvas> element. Gecko, all UI components, and the Spidermonkey JS engine are all compiled and running in WebAssembly.
Here are a few things you might find interesting:
- This is fully end to end encrypted! We use the WISP protocol for TCP-over-websockets.
- There is a novel WASM->JS JIT for experimental site speedup
- This port cost over 25k in opus/fable tokens for debugging and JIT research
This was just a fun experiment to push the boundaries of WebAssembly. For a more usable "browser in browser" experience, we also built https://github.com/HeyPuter/browser.js that eats a bit less RAM.
I've spent the last few months working on this codec.
It has the following characteristics:
- SOTA decompression throughput in its ratio class
- Decent ratios (comparable to LZ4 at high effort levels)
- Slow compression
Most of the gains can be attributed to reducing branches and making decompression very friendly to out-of-order cores, by using a smart format.Results on the tarred Silesia corpus on Intel x86-64 follow:
codec decode ratio encode
misa77 -0 5219 MB/s 42.64% 54.5 MB/s
misa77 -1 4274 MB/s 39.65% 51.2 MB/s
lz4 2505 MB/s 47.59% 371 MB/s
lz4hc -12 2531 MB/s 36.45% 7.31 MB/shi hn, i built kosh because i wanted to track my finances without giving a hosted service access to the data.
it supports accounts, transactions, budgets, bills, recurring expenses, goals, and csv imports. it runs on next.js and postgresql, and can be deployed with docker compose.
it’s still early. i’d appreciate feedback on the setup, missing workflows, and anything that would stop you from trusting it with your own records.
I wanted to run AI from inside the JVM. I started out with the standard REST sidecar, ripped that out to use Project Panama (Foreign Function & Memory API) in the new JDK versions to interface directly with llama.cpp. I still wasn't happy with how that functioned, so I built libargus.cc to get a clean ABI to expose a structured API up in the JVM landscape. It still uses Project Panama to interface directly with llama.cpp, whisper.cpp, and ggml compute graphs.
I have zero-allocation on the hot paths, memory segments for prompts and tokens are allocated once inside confined Arenas. Raw pointers pass straight through down to the low C level. This avoids primitive array cloning and heap churn.
I mapped out the native structures from llama.cpp and whisper.cpp while matching the compiler's padding to maintain safe memory access.
I bundle pre-compiled native binaries in the jar for easy deployment.
This execution engine provides the foundation I need for work I'm doing on a spatio-temporal memory layer (L-TABB) to replace RAGs. I'd love to get technical feedback to polish any issues while I continue working on the next layer. Deep-dives from anyone hacking on Project Panama or low-latency systems in modern JDK would be very appreciated!
I'm much better with code than prose, so I'll let the code do most of the talking.
Happy Hacking! /David
Code: https://libargus.cc Project Landing Page: https://projectargus.cc
I’ve been obsessed with simulation toys (software that allows you to play with a complex miniature world) ever since I was young and playing with SimCity and cellular automata. This kind of software exists at the delightful and weird intersection of simulation, complexity science, education, and gaming. And I want more of it! I created Microcosm Industries to initially act as a clearinghouse for simulation toys that are being built, ones that allow the user to playfully grapple with complex systems in all their interdisciplinary strangeness.
But I’m also hoping that Microcosm Industries can be more: acting as a way to spur people to make more of these, or even serving as a Schelling Point for this somewhat fractured simulation toy world. Because this type of software shouldn’t just be thought of as being from the heyday of Maxis—maker of SimCity and many other games—decades ago. In truth, this kind of software is easier to build than ever, due to processing advances and AI-enhanced coding. We might be entering a new golden age for the simulation toy.
Here’s a bit more about the thinking behind Microcosm Industries: https://microcosm.industries/about/
And please let me know of other examples I should add to the Microcosm Industries list, or fellow travelers I should be speaking with.