Fathy Boundjadj develops browser and rendering tools, including Carbonyl, a Chromium-based browser that runs inside a terminal, and html2svg, which exports web pages and canvas content as images. His technical essays explain the changes underneath those interfaces.[1][2][3]
Start with Forking Chrome to render in a terminal →
Contributions
Bring a modern browser into a terminal
Carbonyl retains Chromium’s web engine while rendering into a terminal’s character grid. It can run without a window server and through SSH, with mouse and keyboard input sent back into the browser. Its README documents modern web APIs and media support alongside practical limitations, including unavailable fullscreen mode. It is a browser runtime rather than a text-only HTML reader.[2]
Connect browser rendering to terminal constraints
Boundjadj’s implementation essay follows the work from colored half-block characters through text capture, input handling and performance fixes. He explains why redrawing unchanged pixels and copying output between processes wasted resources, then shows changes to Chromium’s rendering path. The article makes the engineering tradeoffs visible through code fragments and successive demonstrations.[4]
Export a rendered page in several formats
html2svg uses Chromium to convert HTML and canvas content into SVG, PDF or bitmap output. It offers a command-line interface and an HTTP server with controls for viewport size, full-page capture and a delay before capture. Carbonyl subsequently became its runtime, connecting the two projects through a shared rendering foundation.[2][3]
Tools, writing & talks
Writing, research & talks
Start here
An illustrated implementation account covering terminal graphics, browser input and rendering performance.
Begin with the successive rendering examples to see why ordinary terminal drawing is insufficient. The first sections are visual; following the patches in detail requires some familiarity with C++, Rust and browser rendering.
Author[4]