Орхун Пармаксиз опубликовал Ratty — мультиплатформенный эмулятор терминала с открытым исходным кодом. Написан на Rust, лицензия MIT. Главная особенность: рендеринг текста через GPU, встроенная 3D-сцена и настраиваемый курсор в виде вращающейся крысы. Сборки доступны для Linux (через crates.io) и macOS.
Контекст
Ratty — не форк iTerm или Alacritty. Это эксперимент: что будет, если взять терминал и добавить ему полноценное третье измерение? Вдохновение — TempleOS, легендарный однопользовательский OS-проект Терри Дэвиса с нестандартной философией. Рабочий стек: Ratatui как UI-буфер, Parley/Vello для рендеринга текста на GPU, Bevy — игровой движок на Rust — для отображения 2D/3D-сцены.
Протокол Kitty Image Protocol позволяет выводить изображения прямо в терминале — в демо автор отображает логотип TempleOS в правом верхнем углу.
Пайплайн пока гибридный: Ratatui-буфер собирается на CPU, Parley/Vello рендерит на GPU, результат читается обратно в CPU-память, затем передаётся Bevy для отображения. Полностью GPU-резидентного пути ещё нет — это следующий технический рубеж. Переход потребует интеграции рендеринга напрямую в текстуру Bevy-устройства, минуя мост через CPU-память.
Аналитика
Терминал — самый консервативный инструмент разработчика. Большинство команд работает в nеизменной конфигурации годами. GPU-рендеринг уже появился в Alacritty и WezTerm, но 3D-сцена как нативная часть терминала — шаг за пределы утилитарного мышления.
Bevy как движок выбран не случайно: весь стек на Rust даёт memory safety без сборщика мусора и нативную многопоточность. Для экспериментального проекта это осмысленный выбор — возможности для оптимизации остаются в руках разработчика, а не прячутся за рантайм.
Что важнее фичей — философия. Когда AI-агенты запускаются прямо в терминале, когда CLI-инструменты занимают центральное место в dev-процессе, вопрос «каким должен быть терминал» становится прикладным. Эксперименты вроде Ratty отвечают на него с нестандартного угла. Рано или поздно кто-то возьмёт эти идеи и сделает из них production-инструмент.
Кейсы применения в бизнесе
B2B-SaaS стартап с developer tool или CLI-клиентом: архитектура Ratty — референс для нестандартного UX в терминале. GPU-рендеринг позволяет добавить визуализацию данных (графики, 3D-структуры) без выхода в браузер. Сценарий: аналитическая панель прямо в CLI для devops-команд с наглядным отображением метрик.
IT-студия или аутсорс-команда: Ratty как основа для брендированного внутреннего инструмента — терминал с кастомным курсором, логотипом клиента и визуальными элементами. MIT-лицензия позволяет форкнуть и адаптировать. Результат — дифференцированный developer experience для корпоративных клиентов.
Образовательная платформа или буткемп в КР/СНГ: поддержка Kitty Image Protocol означает вывод схем и диаграмм прямо в терминал. Интеграция в курс по системному программированию или Rust: студенты видят результат визуально, не только текстом. Плюс — готовая тема для студенческого хакатона.
Кейсы в личной жизни
Разработчик на Rust: исходный код Ratty — учебный материал по интеграции Bevy + Ratatui + Parley. Форкнуть, поменять курсор, добавить собственный 3D-объект — конкретный проект для портфолио с реальным GPU-кодом. Не абстрактный туториал, а живой репозиторий.
Стример или контент-мейкер в сфере tech: 3D-терминал со вращающимся курсором — это визуал. На YouTube и Twitch dev-стримы с нестандартным окружением удерживают аудиторию лучше. Ratty можно использовать как декоративный элемент рабочего места.
Студент или начинающий разработчик: проект открытый, MIT-лицензия, активно развивается. Первый вклад в open source не обязан быть в крупный фреймворк. Небольшой PR в Ratty — новый 3D-объект, расширение протокола, исправление рендеринга — реальный опыт с Rust и GPU-программированием.
Как применить сегодня
- Установить Ratty через crates.io на Linux или собрать из исходников для macOS — инструкция в репозитории автора на GitHub.
- Протестировать Kitty Image Protocol: вывести изображение через совместимый клиент и оценить качество GPU-рендеринга.
- Изучить архитектуру пайплайна Ratatui → Parley/Vello → Bevy в README и блоге автора — это конкретный референс для собственных GPU-UI проектов на Rust.
- Добавить Ratty в список технических демо на внутреннем хакатоне: формат «что если терминал был 3D» работает как тема для короткого спринта.
- Подписаться на репозиторий — переход к полностью GPU-резидентному рендерингу будет значимым техническим апдейтом.
«Всё, чего я хотел, — это создать эмулятор терминала с вращающейся крысой в качестве курсора. Вместо этого я, кажется, откусил кусок сыра побольше» — Орхун Пармаксиз, автор Ratty.