Ratatui – Showcase Aplikasi
(ratatui.rs)- Koleksi berbagai contoh aplikasi berbasis terminal (TUI) yang dibuat dengan framework Ratatui
- Mencakup aplikasi untuk beragam kebutuhan seperti pemantauan sistem, penelusuran file, analisis jaringan, dan visualisasi data
- Contoh yang diperkenalkan antara lain Atuin (manajemen riwayat shell), GitUI (antarmuka Git), Oatmeal (chat LLM), dan Yazi (pengelola file)
- Setiap proyek ditulis dengan bahasa Rust serta menyediakan tautan GitHub dan gambar demo
- Kumpulan contoh yang menunjukkan skalabilitas dan kepraktisan pengembangan UI terminal di ekosistem Rust
Ikhtisar
- Halaman App Showcase Ratatui menampilkan aplikasi terminal user interface (TUI) nyata yang dikembangkan menggunakan Ratatui
- Setiap entri terdiri dari tautan repositori GitHub, deskripsi singkat, serta gambar demo atau GIF
- Ada lebih dari 27 proyek yang tercakup, dengan cakupan luas mulai dari alat sistem, game, AI, hingga manajemen data
Daftar aplikasi utama
Atuin
- Menggantikan riwayat shell lama dengan database SQLite dan mencatat konteks tambahan saat perintah dijalankan
Bandwhich
- Utilitas CLI yang menampilkan penggunaan jaringan berdasarkan proses, koneksi, dan IP/host jarak jauh
Binsider
- Alat untuk melakukan analisis biner di terminal
Bottom
- Pemantau sistem lintas platform yang memvisualisasikan penggunaan sumber daya seperti CPU dan memori
Crossword
- Game untuk memainkan teka-teki silang di terminal
Csvlens
- Viewer khusus file CSV, mirip perintah
lesstetapi dioptimalkan untuk struktur CSV
Dua
- Alat analisis ruang disk berbasis pemrosesan paralel dengan fitur penghapusan cepat
Fzf-make
- Alat CLI untuk menjalankan target
makemenggunakan fuzzy finder
GitUI
- Antarmuka TUI berbasis Rust untuk pekerjaan Git
Gpg-tui
- Antarmuka terminal untuk GnuPG
Joshuto
- Pengelola file bergaya Ranger yang ditulis dengan Rust
Material
- Palet warna Material Design untuk terminal
Minesweep-rs
- Game minesweeper yang ditulis dengan Rust
Oatmeal
- Aplikasi chat terminal untuk bercakap dengan LLM, mendukung backend ChatGPT atau Ollama
- Mencakup fitur perintah slash, UI bubble chat, dan integrasi Neovim
Oha
- Mengirim beban ke aplikasi web dan menampilkan hasil secara real-time lewat TUI
Oxker
- TUI untuk mengontrol dan memantau container Docker
OpenAPI-tui
- Alat untuk melihat dokumentasi OpenAPI dengan cepat di terminal
Rainfrog
- Alat terminal ringan untuk berinteraksi dengan database
Rucola
- Menyediakan fungsi manajemen catatan Markdown dan konversi HTML
Scope-tui
- Menghadirkan fungsi osiloskop, vectorscope, dan spektroskop di terminal
Slumber
- Menjalankan klien HTTP/REST di terminal
Steer
- Agen coding AI untuk pengembangan lokal dan otomasi
Taskwarrior-tui
- Antarmuka terminal untuk alat manajemen tugas Taskwarrior
Television
- Mesin pencarian berbasis algoritma fuzzy matching yang mendukung penelusuran berbagai sumber data seperti file, Git, dan environment variable
Trippy
- Alat diagnosis jaringan yang menggabungkan fungsi traceroute dan ping
Xplr
- Penjelajah file TUI yang cepat dan mudah di-hack
Yazi
- Pengelola file super cepat berbasis asynchronous I/O yang ditulis dengan Rust
Yozefu
- TUI interaktif untuk menjelajahi data cluster Kafka
- Mendukung pemfilteran rinci dengan bahasa kueri mirip SQL
- Alternatif untuk AKHQ, Redpanda Console, dan plugin Kafka JetBrains
Arti penting ekosistem Ratatui
- Semua aplikasi dibangun di atas framework Ratatui, yang menunjukkan keragaman dan kematangan pengembangan UI terminal di lingkungan Rust
- Setiap proyek dipublikasikan sebagai repositori GitHub open source, sehingga bisa langsung dijadikan referensi oleh developer
- Ini menunjukkan bahwa Ratatui kian mengukuhkan posisi sebagai alat standar untuk pengembangan CLI/TUI berbasis Rust
1 komentar
Opini Hacker News
Menarik bahwa belakangan ini ada banyak TUI yang dibuat dengan Rust
Yang saya tahu antara lain Awesome TUIs, terminaltrove, dan daftar awesome Ratatui
Qt atau GTK terlalu besar, Windows sering berubah, dan saya tidak ingin berurusan dengan Electron
Kualitas terminal belakangan ini juga membaik, jadi jauh lebih mudah untuk membuat aplikasi kecil
Analogi bahwa membuat sesuatu yang keren dengan LEGO lebih mudah daripada memahat dari tanah liat terasa sangat pas
Saat memvisualisasikan status data, tidak perlu membangun pipeline rendering browser
Sebagai referensi, ada contoh gambar ini
Terminal modern seperti Ghostty, WezTerm, Kitty, iTerm, dan Alacritty mendukung akselerasi GPU dan warna 24-bit
Selain itu, belakangan ini para developer juga lebih sering memakai alat seperti Claude Code, Gemini CLI, dan Codex di terminal daripada di IDE
Memang banyak batasannya, tetapi justru karena itu lebih sulit membuat UI yang berantakan
Sangat cocok untuk software dengan kompleksitas sederhana hingga menengah. Sebagai contoh, saya merekomendasikan Midnight Commander
Kolaborasi dengan desainer terasa makin birokratis dan tidak efisien
TUI memaksa antarmuka yang rapi dengan kepadatan informasi tinggi dan ruang kosong yang minim
Alasan TUI populer di Rust adalah karena situasi GUI-nya sangat buruk
Itu terlihat dari survei library GUI Rust
Saya ingin memakai Qt di Rust, tetapi tidak ingin QML, Slint, GTK, atau UI mode langsung
Akan sangat disayangkan jika Rust tidak pernah punya sesuatu seperti Qt
Ratatui adalah framework yang sangat menyenangkan untuk dipakai, jadi ini tidak ada hubungannya dengan ketiadaan GUI
Ketika CLI tidak cukup tetapi GUI penuh terasa berlebihan, TUI mengisi titik tengah itu dengan baik
Referensi parent/child antara window-container-button berbenturan dengan model ownership Rust
Mekanisme signal-slot di Qt juga sulit diimplementasikan di Rust
Sebagian besar crate yang saya butuhkan berada dalam kondisi WIP atau terbengkalai
Selain beberapa crate besar yang populer, dokumentasinya pun sering setara dengan “lihat dokumentasi C++ saja”
Wajar karena Rust masih bahasa yang relatif muda, tetapi rasanya masalah yang lebih besar adalah kurangnya semangat pemeliharaan paket di komunitas
Namun saya tidak yakin apakah bagian GUI-nya diimplementasikan sepenuhnya hanya dengan Rust
Saya sedang menunggu browser web TUI yang benar-benar memungkinkan saya hidup sepenuhnya di dalam terminal
Dengan teknologi seperti sixel atau shader yang mendukung grafis, rasanya itu cukup memungkinkan kecuali untuk video
Pemblokiran iklan akan mudah, jadi mungkin perusahaan tidak akan menyukainya, tetapi kalau dibungkus sebagai browser untuk LLM mungkin bisa lebih mudah diterima
Terminal adalah buffer karakter beresolusi rendah, jadi rendering piksel dengan akselerasi GPU jelas jauh lebih efisien
Ia menjalankan Firefox secara headless lalu merender hasilnya ke terminal sebagai ASCII. Cukup keren
Contoh utamanya adalah Lynx dan w3m
Saya ingin memperkenalkan viewer Markdown buatan saya, mdfried
Keterbacaan teks asli Markdown memang bagus, tetapi melihatnya di browser terasa lebih nyaman, jadi saya membuat viewer yang merender header sebagai gambar
Font perlu diatur sekali, dan gambar inline juga didukung
Sekarang bahkan bisa dirender langsung tanpa konversi gambar dengan memanfaatkan protokol text-sizing Kitty
Teletekst di Belanda menyediakan antarmuka SSH
Menurut artikel ini, ini dibuat dengan Ratatui dan bisa diakses lewat
ssh teletekst.nlSaya mencoba aplikasi kecil yang dibuat dengan Ratatui, dan terkejut karena hanya dengan input teks sederhana penggunaan CPU bisa naik sampai 8%
Itu terjadi bahkan saat memakai contoh resmi apa adanya
cargo runsecara default memang mode debugSaya ingin mengintegrasikan proyek open source saya TironCalc ke repositori utama ironcalc
Menurut saya ini proyek yang bagus untuk dikerjakan dengan Rust dan Ratatui
Namun setelah melihat proyek edit dari Microsoft, saya jadi tidak yakin apakah Ratatui adalah pilihan terbaik
Saya ingin memperkenalkan game TUI berbasis Ratatui buatan saya, rebels-in-the-sky
Hanya saja video di repositorinya tidak bisa dibuka di perangkat saya
Saya merasa judul postingannya agak aneh
Saya kira ini akan menjadi tulisan tentang revolusi TUI di Rust, padahal isinya sebenarnya kumpulan aplikasi yang dibuat dengan Ratatui
Charm di ekosistem Go juga memainkan peran yang mirip
Saya merasa makin dibutuhkan utilitas untuk menjalankan agen berbasis CLI per folder di terminal
Misalnya, itu bisa dipakai untuk mengotomatisasi pemeriksaan kepatuhan hukum
Ada Cline CLI, Opencode CLI, Codex CLI, Gemini CLI, Claude Code CLI, dan lainnya