Starexe
📖 Tutorial

10 Surprising Features of Ratty, the Rust Terminal with a 3D Rat Cursor

Last updated: 2026-05-17 16:51:53 Intermediate
Complete guide
Follow along with this comprehensive guide

If you thought terminal emulators were all about boring green text on a black background, think again. Ratty, a modern terminal written in Rust, reimagines the command line as a playground for 3D graphics and quirky interactions. Its default cursor is a spinning rat, and it can render 3D models right inside your terminal window. Inspired by the unconventional design of TempleOS but built with GPU acceleration and the Bevy game engine, Ratty is an experimental project that pushes the boundaries of what a terminal can do. Here are ten features that make Ratty both absurd and totally fun.

1. GPU-Accelerated Rendering

Unlike classic terminals that rely on CPU-based text rendering, Ratty leverages your graphics card for smooth, hardware-accelerated output. This means not only faster performance but also the ability to render complex 3D scenes without lag. The terminal’s entire interface—including text, images, and models—is drawn using the GPU, resulting in crisp visuals at high frame rates. This foundation makes all the other flashy features possible, turning a typically static environment into a dynamic graphical canvas.

10 Surprising Features of Ratty, the Rust Terminal with a 3D Rat Cursor
Source: itsfoss.com

2. Customizable 3D Cursor

Ratty’s cursor isn’t just a blinking line or block—it’s a full 3D object defined using terminal protocols and the Ratatui library. By default, it’s a cute rat model, but you can swap it for any custom 3D asset you fancy. The cursor moves seamlessly as you type, following your text input like a faithful companion. This feature showcases the integration of the Bevy game engine, blending traditional terminal workflow with immersive visuals.

3. Rotating 3D Cursor Animation

To make typing even more entertaining, Ratty sets the default cursor to a constantly rotating rat. The 3D model spins on its axis as it moves across the screen, creating a playful effect that’s impossible to ignore. While this might seem distracting at first, it demonstrates the engine’s ability to animate objects in real time within the terminal. You can disable the rotation if you prefer a static cursor, but the default is a clear statement: Ratty isn’t your ordinary emulator.

4. Dedicated 3D Mode

Press Ctrl+Alt+Enter, and your entire terminal transforms into a 3D scene. In this mode, the flat window becomes a canvas that you can tilt, spin, and warp. Your command output is rendered on a floating plane in three-dimensional space, letting you view your work from any angle. This feature is perfect for presentations or simply showing off Ratty’s capabilities. It’s a full immersion into the game engine, turning a coding session into a virtual reality experience.

5. Mobius Mode

Even more trippy is the “Mobius mode,” activated with Ctrl+Alt+M. This twists the terminal output into a continuous Möbius strip, so text appears to wrap around a loop. It’s a purely visual gimmick, but it highlights the project’s creative use of the Bevy engine to deform geometry in real time. Developers can appreciate the technical challenge of mapping text onto a non-Euclidean surface while staying responsive to input.

6. Warp Controls in 3D Mode

While in 3D Mode, you can adjust the amount of warp applied to the scene. Use Super+Ctrl+Alt+Up to increase distortion and Super+Ctrl+Alt+Down to reduce it. This gives you fine control over how much the terminal bends and twists, allowing you to find a sweet spot between readability and visual flair. The warp is applied in real time, demonstrating the engine’s ability to handle live user input while rendering complex 3D transformations.

10 Surprising Features of Ratty, the Rust Terminal with a 3D Rat Cursor
Source: itsfoss.com

7. Inline 3D Objects

Ratty lets you embed 3D models directly into the terminal text. Using the Ratty Graphics Protocol, you can register assets and anchor them to specific cells. As you scroll or edit, the models stay fixed to their text positions, moving fluidly with the content. This opens up possibilities for visualizing data, showing 3D graphs, or just adding a floating cube next to your code. The protocol handles communication between terminal data and the 3D engine to ensure seamless synchronization.

8. Built-in Image Support

Images aren’t left out either. Ratty implements the Kitty graphic protocol, so you can display PNGs, JPEGs, and other formats right in the terminal without external tools. Combined with the GPU rendering, images appear sharp and fast. This feature is practical for developers who need to view screenshots, diagrams, or photos without leaving the command line.

9. Retro Design Inspired by TempleOS

Ratty’s visual style takes cues from TempleOS, Terry A. Davis’s notoriously idiosyncratic operating system. The result is a retro look with bold colors, chunky fonts, and a nostalgic feel—yet backed by modern GPU acceleration. This aesthetic choice sets Ratty apart from minimalistic terminals like Alacritty or Kitty. It’s a deliberate homage that adds personality to an otherwise functional tool.

10. Experimental Open-Source Project Built with Rust

Written in Rust, Ratty benefits from memory safety, speed, and a vibrant ecosystem. The project is open-source and actively developed on GitHub, encouraging community contributions. Its experimental nature means you can expect occasional bugs, but also rapid innovation. If you’re a developer who loves tinkering, Ratty offers a chance to explore the intersection of terminal emulation, 3D graphics, and game engine integration.

Ratty is not designed to replace your daily driver terminal—it’s too quirky and unpredictable for production use. But as a proof-of-concept and a source of delight, it succeeds brilliantly. Whether you’re using it to impress colleagues, explore 3D rendering, or just enjoy a rat cursor that spins while you code, Ratty proves that command lines can be fun again. Check out its GitHub repository to install it and join the experiment.