explaingit

fathyb/carbonyl

Analysis updated 2026-06-21

19,088RustAudience · ops devopsComplexity · 3/5Setup · moderate

TLDR

A full Chromium-based web browser that runs entirely inside a terminal window with no graphical desktop required, supporting JavaScript, WebGL, video, and 60fps rendering.

Mindmap

mindmap
  root((Carbonyl))
    What it does
      Terminal browsing
      60fps rendering
      Headless automation
    Tech stack
      Rust
      Chromium
      Docker
    Use cases
      SSH web browsing
      Server automation
      Headless testing
    Audience
      DevOps engineers
      Server admins
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Browse the web over an SSH connection to a remote server that has no graphical interface

USE CASE 2

Run automated browser tasks in a headless server environment without installing a display server

USE CASE 3

Test modern JavaScript web apps including WebGL in a terminal-only environment

What is it built with?

RustChromiumNode.jsDocker

How does it compare?

fathyb/carbonylrigellute/spotify-tuifacebook/relay
Stars19,08819,16918,938
LanguageRustRustRust
Setup difficultymoderatemoderatehard
Complexity3/52/53/5
Audienceops devopsdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 5min

Easiest via npm or Docker, building from source requires Chromium's full build toolchain which is complex.

In plain English

Carbonyl is a full web browser, built on the Chromium engine that powers Google Chrome, that runs entirely inside a terminal window, with no graphical desktop required. Normally a web browser needs a window manager and a screen. Carbonyl removes that requirement by rendering web pages as text characters directly in your terminal, while still supporting modern web features like JavaScript, WebGL, WebGPU, audio, and video playback. It works by patching Chromium's rendering engine so that instead of drawing pixels to a window, it converts the output to terminal characters at up to 60 frames per second. Because it renders natively at the terminal's resolution rather than downscaling a full-resolution window, it is significantly faster and lighter on CPU than earlier projects like Browsh. You would use Carbonyl when you need to browse the web on a server with no graphical interface, or over an SSH connection to a remote machine. It is also useful for automated browser tasks in headless server environments. You can install it via npm, run it as a Docker container, or download a binary for macOS or Linux. The core rendering layer is written in Rust, the browser runtime is a modified version of Chromium's headless shell.

Copy-paste prompts

Prompt 1
How do I run Carbonyl over SSH to browse a website on a remote Linux server with no GUI installed?
Prompt 2
Start Carbonyl as a Docker container and use it to automate a web form on a server with no display
Prompt 3
What Carbonyl command-line flags control the terminal rendering resolution and frame rate?
Prompt 4
How does Carbonyl compare to Browsh for performance and modern web feature support in a terminal browser?

Frequently asked questions

What is carbonyl?

A full Chromium-based web browser that runs entirely inside a terminal window with no graphical desktop required, supporting JavaScript, WebGL, video, and 60fps rendering.

What language is carbonyl written in?

Mainly Rust. The stack also includes Rust, Chromium, Node.js.

How hard is carbonyl to set up?

Setup difficulty is rated moderate, with roughly 5min to a first successful run.

Who is carbonyl for?

Mainly ops devops.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub fathyb on gitmyhub

Verify against the repo before relying on details.