| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| ratty-x86_64-apple-darwin.tar.xz.sha256 | 2026-05-13 | 100 Bytes | |
| ratty-x86_64-unknown-linux-gnu.tar.xz | 2026-05-13 | 13.4 MB | |
| ratty-x86_64-unknown-linux-gnu.tar.xz.sha256 | 2026-05-13 | 105 Bytes | |
| sha256.sum | 2026-05-13 | 489 Bytes | |
| source.tar.gz | 2026-05-13 | 2.7 MB | |
| source.tar.gz.sha256 | 2026-05-13 | 81 Bytes | |
| dist-manifest.json | 2026-05-13 | 30.2 kB | |
| ratty-aarch64-apple-darwin.tar.xz | 2026-05-13 | 11.3 MB | |
| ratty-aarch64-apple-darwin.tar.xz.sha256 | 2026-05-13 | 101 Bytes | |
| ratty-aarch64-unknown-linux-gnu.tar.xz | 2026-05-13 | 12.5 MB | |
| ratty-aarch64-unknown-linux-gnu.tar.xz.sha256 | 2026-05-13 | 106 Bytes | |
| ratty-x86_64-apple-darwin.tar.xz | 2026-05-13 | 12.2 MB | |
| Ratty 0.3.0 source code.tar.gz | 2026-05-13 | 2.7 MB | |
| Ratty 0.3.0 source code.zip | 2026-05-13 | 2.7 MB | |
| README.md | 2026-05-13 | 5.8 kB | |
| Totals: 15 Items | 57.4 MB | 0 | |

Ratty: A GPU-rendered terminal emulator with inline 3D graphics 🧀
ratty-term.org
0.3.0 - 2026-05-13
Read The Register article about Ratty: "Rodent-obsessed developer creates Ratty to bring 3D graphics to the command line"
Download Ratty
From crates.io:
:::bash
cargo install ratty
From Arch Linux repositories:
:::bash
pacman -S ratty
Or download binary releases:
| File | Platform | Checksum |
|---|---|---|
| ratty-aarch64-apple-darwin.tar.xz (github.com) | Apple Silicon macOS | checksum |
| ratty-x86_64-apple-darwin.tar.xz (github.com) | Intel macOS | checksum |
| ratty-aarch64-unknown-linux-gnu.tar.xz (github.com) | ARM64 Linux | checksum |
| ratty-x86_64-unknown-linux-gnu.tar.xz (github.com) | x64 Linux | checksum |
Features
- Support transform and update control for 3D objects by @orhun in #39
You can now set the position, rotation and scale of inline 3D objects in Ratty and update them in-place after placement.
The following RGP sequence first registers (r) an object, then places it (p) and finally updates its rotation, position and brightness (u).
:::text
ESC _ ratty;g;r;id=7;fmt=glb;path=SpinyMouse.glb ESC \
ESC _ ratty;g;p;id=7;row=5;col=10;w=3;h=2;depth=1.5;rx=0;ry=30;rz=0;sx=1;sy=1;sz=1 ESC \
ESC _ ratty;g;u;id=7;ry=120;px=0.25;brightness=1.2 ESC \
Example usage in Rust
:::rust use ratatui_core::{buffer::Buffer, layout::Rect, widgets::Widget}; use ratatui_ratty::{ObjectFormat, RattyGraphic, RattyGraphicSettings}; let mut graphic = RattyGraphic::new( RattyGraphicSettings::new("assets/objects/SpinyMouse.glb") .id(7) .format(ObjectFormat::Glb) .rotation([0.0, 30.0, 0.0]) .scale3([1.0, 1.0, 1.0]), ); graphic.register()?; let mut buf = Buffer::empty(Rect::new(0, 0, 80, 24)); (&graphic).render(Rect::new(10, 5, 24, 10), &mut buf); graphic.settings_mut().rotation = [0.0, 120.0, 0.0]; graphic.settings_mut().brightness = 1.2; graphic.update()?;- Support inline payloads by @orhun in #41
You can now register 3D objects from payload data sent directly over the Ratty Graphics Protocol, without needing to provide a local file path first.
This will make it possible to e.g. send 3D object data from SSH sessions! 🎉
Example registration pipeline (with source=payload and more fields to indicate chunking):
:::text
ESC _ ratty;g;r;id=42;fmt=obj;source=payload;more=1;name=rat.obj;<base64 chunk 1> ESC \
ESC _ ratty;g;r;id=42;fmt=obj;source=payload;more=1;<base64 chunk 2> ESC \
ESC _ ratty;g;r;id=42;fmt=obj;source=payload;more=0;<base64 chunk N> ESC \
ESC _ ratty;g;p;id=42;row=12;col=8;w=4;h=2 ESC \
Example usage in Rust
:::rust use ratatui_ratty::{ObjectFormat, RattyGraphic, RattyGraphicSettings}; let graphic = RattyGraphic::new( RattyGraphicSettings::new("live_draw.obj") .id(42) .format(ObjectFormat::Obj), ); let obj_bytes = std::fs::read("live_draw.obj")?; graphic.register_payload(&obj_bytes)?;- Support keyboard scrollback navigation by @orhun in #35
Here are new (customizable) key bindings for navigating Ratty's local scrollback without using the mouse:
Alt+PageUp: scroll one page upAlt+PageDown: scroll one page downAlt+Up: scroll one line upAlt+Down: scroll one line down
Bug Fixes
- Fall back to
$SHELLor/bin/shby default by @orhun in #36
Documentation
- Update README.md to run the install command for arch and dependency install commands for other Distros by @zalanwastaken in #38
- Document necessary prerequisites for Linux by @jokeyrhyme in #10
New Contributors
- @zalanwastaken made their first contribution in #38
- @jokeyrhyme made their first contribution in #10
Full Changelog: https://github.com/orhun/ratty/compare/v0.2.0...0.3.0