| Terminal | The terminal itself |
| Terminal | Create a terminal, write VT data to it, and read its state |
| Effects | Respond to what programs ask of the terminal, such as the bell, title changes, and queries |
| Modes | Pack DEC and ANSI mode numbers and encode DECRPM reports |
| Snapshots | Save a terminal's full state and restore it later |
| Screen Contents | Read what is on the screen |
| Cells and Rows | Read the contents of grid cells and rows |
| Points | Name a grid position in the active area, viewport, screen, or history |
| Grid References | Point at a cell, read it, and keep track of it as the terminal scrolls |
| Style | Read a cell's colors and text attributes |
| Selection | Select words, lines, and ranges, and turn pointer gestures into selections |
| Search | Find a string in a terminal, including its scrollback |
| Formatter | Turn terminal content into plain text, VT sequences, or HTML |
| Rendering | Draw a terminal |
| Render State | Find out what changed since the last frame and read the rows and cells to draw |
| Kitty Graphics | Read the images that programs send with the Kitty graphics protocol |
| Input | Turn user input into bytes for the pty |
| Keys | Encode key events with the legacy encoding or the Kitty keyboard protocol |
| Mouse | Encode mouse events with the X10, UTF-8, SGR, URxvt, or SGR-Pixels protocols |
| Focus | Encode focus gained and lost events, for mode 1004 |
| Paste | Paste into a terminal, and check paste data for unsafe content |
| Building Blocks | Parsers and encoders that work without a terminal |
| OSC Parser | Parse OSC sequences into commands |
| SGR Parser | Parse SGR sequences into text attributes |
| Size Reports | Encode size reports, for mode 2048 and XTWINOPS queries |
| Color Scheme Reports | Encode the reply to a color scheme query (CSI ? 996 n) |
| Colors | Parse colors, generate palettes, and look up X11 color names |
| Unicode | Measure codepoints and graphemes the way the terminal does |
| Library | Types and settings shared by every API |
| Core Types | The result codes, strings, and buffers that every API uses |
| Version | Check which version of libghostty-vt you are using |
| Build Info | Find out how this copy of the library was built and which features it has |
| Allocators | Run the library on your own memory allocator |
| Readers and Writers | Stream bytes in and out through your own callbacks |
| System Interface | Plug in your own system functions, such as a PNG decoder |
| WebAssembly | Allocate memory and pass pointers from a WebAssembly host |