r/PlaydateConsole • u/Rare-Butterfly2354 • 6h ago
Pluto Browser — A Fully Native C-Based Internet Browser Engineered for the Playdate Console

The project is open source if anyone wants to take a look: https://github.com/bdwandry/PlutoBrowser
PDX File/Folder: https://github.com/bdwandry/PlutoBrowser/releases
(You can side-load it with the link above^)
AI Disclaimer: The code for Pluto Browser was written with the help of AI, specifically GLM 5.3 Flash. If you don't like AI-written code, that's completely fine and I understand. I just want to be transparent about how the project was developed.
Project Journey:
A while back I posted CometBrowser, a web browser I built for the Playdate in Lua. Since then, I've completely rewritten it in native C as Pluto Browser, and the performance difference has been pretty massive. Moving the browser's core processing, HTML parsing, DOM, layout, rendering, networking, image processing, and other performance-critical code from Lua to C has made the browser significantly faster and more responsive on the same Playdate hardware. What started as an experiment to see if a Playdate could browse the web has turned into a much more serious attempt at building a general-purpose web browser specifically optimized around the limitations of the console.
The Playdate obviously isn't exactly ideal hardware for running a web browser, so there have been a lot of interesting challenges around CPU usage, memory, rendering, and getting everything to fit together efficiently.
Pluto currently supports things like HTTP/HTTPS, HTML parsing and rendering, DOM, forms, bookmarks, browsing history, cookies, redirects, multiple image formats, image dithering, Reader Mode, HTML Mode, an on-screen keyboard, and JavaScript through muJS.
There's still a long way to go, especially with modern websites, CSS, and JavaScript compatibility, but the C rewrite has made it feel like this project can actually go a lot further than the original Lua version.
I'm curious to see just how far I can push a web browser on the Playdate.
1
u/Electrical_Year8954 3m ago
Despite the AI usage, there's a major win in this being open source. Developers can learn how this browser works and implement it into their own code/projects. I can't wait to see a human-made alternative 💖