Forking Chrome to render in a terminal (2023)

(fathy.fr)

166 points | by riddley 2 days ago ago

19 comments

  • wonger_ 2 days ago

    Fun fact, this project helped the author get a job: https://github.com/fathyb/carbonyl/issues/162#issuecomment-1...

    Carbonyl is surprisingly performant and usable, especially with --zoom=300 --bitmap

    At lower resolutions, it would be nice to render images using a "subpixel" terminal rendering library like chafa (https://hpjansson.org/chafa/), or maybe sixels/kitty image protocol.

    • Imustaskforhelp 2 days ago

      I remember wanting to use carbonyl on some server so that I don't need to actually create a tunnel b/w 2 servers, start puppeeter in debug instance and open up a website and then hook it up using remote debugging in my ungoogled chromium.

      I really wanted something that could just work...

      Now that being said, the project was really cool.

      So it might come slightly off topic but when I had last viewed the project, there were a lot of people asking if the project is dead or more importantly, what has happened to author and there were comments like this after the job part and even hackernews showed concern of the dev's life https://github.com/fathyb/carbonyl/issues/201 [is the dev killed by IDF in Gaza #201]

  • btown 2 days ago

    Original discussion: https://news.ycombinator.com/item?id=34547259

    This is really, really cool!

    Skia is a incredible abstraction layer. The linked article at the top of the OP https://fathy.fr/html2svg (2022) has some great graphics of how Skia can support various backends including PDF rendering (via https://skia.org/docs/user/sample/pdf/).

    It's also worth noting that the Chrome Graphics team is writing yet another Skia rasterization backend, just announced last month: https://blog.chromium.org/2025/07/introducing-skia-graphite-...

    Given that this article came out a couple years ago, it's quite possible that it was seen by the Chrome team and inspired them to look at making a new backend from scratch!

  • core1024 2 days ago

    Reminds me of browsh[1]. Interesting projects.

    [1] https://www.brow.sh/

  • panki27 2 days ago

    This needs an option to use the Kitty Graphics Protocol: https://sw.kovidgoyal.net/kitty/graphics-protocol/

    No need to render to ASCII/Unicode anymore!

    • Imustaskforhelp 2 days ago

      Yes I agree, there is also sixel format but I think that sixel is generally used for pngs etc. but both are really cool imo.

    • jesprenj 2 days ago

      maybe kitty should just implement an X11 server or wayland and support all gui programs

  • ksdme9 2 days ago

    It looks so much better than I expected. This is cool.

  • taftster 2 days ago

    This is some fine hack. In the spirit of pure good intentioned hacking. Love this.

  • javier_e06 2 days ago

    This project delivers. Ran on gnome-terminal using podman and I was there watching youtube videos in blocky images. I must try on my rasperry pi.

  • amelius 2 days ago

    Cool but what I'm actually looking for is an article titled:

    "Forking xterm to render graphical applications"

  • microtherion 2 days ago

    It's surprisingly capable. One tricky problem is trying to solve Captchas with it.

    • neuroelectron 2 days ago

      Multimodal LLMs can solve captchas easily if they're allowed to.

  • IcyWindows 2 days ago

    Wow, that's crazy. I also had never heard of Mojo before. Reminds me of Microsoft COM.

  • ranger_danger 2 days ago

    It looks like the project is abandoned/no longer maintained.

    brow.sh (firefox in the terminal) is still being updated though.

  • KebabKanaken 2 days ago

    [flagged]