Steve Janovitz built Tilefinch, a functioning modern web browser for the Sony PlayStation Portable, a device with a 333 MHz MIPS32 processor and 64 MB of RAM. The PSP launched in 2004. Its original browser was nearly unusable. Tilefinch is not.
The architecture is the story. Janovitz uses Lexbor as the HTML rendering engine and Fabrice Bellard's QuickJS for JavaScript execution, deliberately avoiding heavier stacks that would collapse on constrained hardware. The PSP's built-in video decoding handles media offload. Every component choice is a deliberate trade-off, and the full GitHub repository shows exactly how those trade-offs were made.
The implications reach past the PSP. Espressif's ESP32-P4 sits in a hardware category where this approach could apply directly. As the line between high-end microcontrollers and low-end SoCs dissolves, Tilefinch is less a curiosity and more a reference implementation. Read the source before the next wave of constrained-hardware browsers makes this look obvious in hindsight.
[READ ORIGINAL →]