2 puan yazan GN⁺ 2025-11-07 | 1 yorum | WhatsApp'ta paylaş
  • Ratatui framework’ü ile geliştirilen çeşitli terminal tabanlı uygulama (TUI) örneklerini bir araya getiren bir koleksiyon
  • Sistem izleme, dosya gezintisi, ağ analizi, veri görselleştirme gibi farklı kullanım alanlarına yönelik uygulamalar içeriyor
  • Öne çıkan örnekler arasında Atuin(kabuk geçmişi yönetimi), GitUI(Git arayüzü), Oatmeal(LLM sohbeti), Yazi(dosya yöneticisi) yer alıyor
  • Her proje Rust dili ile yazılmış ve GitHub bağlantılarıyla demo görselleri birlikte sunuluyor
  • Rust ekosisteminde terminal UI geliştirmenin ölçeklenebilirliğini ve pratikliğini gösteren bir örnekler derlemesi

Genel bakış

  • Ratatui’nin App Showcase sayfası, Ratatui kullanılarak geliştirilmiş gerçek terminal kullanıcı arayüzü (TUI) uygulamalarını listeliyor
  • Her öğe GitHub depo bağlantısı, kısa bir açıklama ve demo görseli veya GIF ile yapılandırılmış
  • Toplam 27’den fazla proje bulunuyor; sistem araçlarından oyunlara, yapay zekadan veri yönetimine kadar geniş bir yelpazeyi kapsıyor

Başlıca uygulama listesi

Atuin

  • Mevcut kabuk geçmişini bir SQLite veritabanı ile değiştirir ve komut çalıştırma sırasında ek bağlam kaydeder

Bandwhich

  • Süreç, bağlantı ve uzak IP/host bazında ağ kullanımını gösteren bir CLI yardımcı programı

Binsider

  • Terminalde ikili dosya analizi yapan bir araç

Bottom

  • CPU ve bellek gibi kaynak kullanımını görselleştiren çapraz platform sistem monitörü

Crossword

  • Terminalde çengel bulmaca oynanabilen bir oyun

Csvlens

  • CSV dosyalarına özel bir görüntüleyici; less komutuna benzer, ancak CSV yapısına göre optimize edilmiş

Dua

  • Paralel işlem tabanlı disk alanı analiz aracı; hızlı silme özelliği sunar

Fzf-make

  • fuzzy finder kullanarak make hedeflerini çalıştıran bir CLI aracı

GitUI

  • Git işleri için Rust tabanlı bir TUI arayüzü

Gpg-tui

  • GnuPG için terminal arayüzü

Joshuto

  • Rust ile yazılmış, Ranger tarzı bir dosya yöneticisi

Material

  • Terminal için Material Design renk paleti

Minesweep-rs

  • Rust ile yazılmış bir Mayın Tarlası oyunu

Oatmeal

  • LLM ile konuşabilen terminal sohbet uygulaması; ChatGPT veya Ollama backend’ini destekler
    • slash komutları, sohbet balonu arayüzü, Neovim entegrasyonu içerir

Oha

  • Web uygulamasına yük gönderir ve sonuçları gerçek zamanlı TUI içinde gösterir

Oxker

  • Docker container’larını kontrol etmek ve izlemek için TUI

OpenAPI-tui

  • Terminalde OpenAPI dokümantasyonunu hızlıca incelemeyi sağlayan araç

Rainfrog

  • Veritabanı etkileşimi için hafif bir terminal aracı

Rucola

  • Markdown not yönetimi ve HTML’e dönüştürme özellikleri sunar

Scope-tui

  • Osiloskop, vectorscope ve spectroscope işlevlerini terminalde sunar

Slumber

  • HTTP/REST istemcisini terminalde çalıştırır

Steer

  • Yerel geliştirme ve otomasyon için bir yapay zeka kodlama ajanı

Taskwarrior-tui

  • Taskwarrior görev yönetim aracının terminal arayüzü

Television

  • fuzzy matching algoritması tabanlı bir arama aracı; dosya, Git, ortam değişkenleri gibi çeşitli veri kaynaklarını taramayı destekler

Trippy

  • Traceroute ve Ping işlevlerini birleştiren ağ tanılama aracı

Xplr

  • Hızlı ve hacklenebilir bir TUI dosya gezgini

Yazi

  • Rust ile yazılmış, asenkron I/O tabanlı ultra hızlı dosya yöneticisi

Yozefu

  • Kafka cluster verilerini keşfetmek için etkileşimli bir TUI
    • SQL benzeri sorgu dili ile ayrıntılı filtrelemeyi destekler
    • AKHQ, Redpanda Console ve JetBrains Kafka eklentisine alternatif

Ratatui ekosistemindeki önemi

  • Tüm uygulamalar Ratatui framework’ü üzerine kurulu; bu da Rust ortamında terminal UI geliştirmenin çeşitliliğini ve olgunluğunu gösteriyor
  • Her proje açık kaynak GitHub deposu olarak yayımlanmış durumda ve geliştiriciler tarafından doğrudan incelenebiliyor
  • Bu durum, Ratatui’nin Rust tabanlı CLI/TUI geliştirmenin standart aracı haline geldiğini gösteriyor

1 yorum

 
GN⁺ 2025-11-07
Hacker News görüşleri
  • Son zamanlarda Rust ile yapılmış TUI'lerin çok olması ilginç
    Benim bildiklerim Awesome TUIs, terminaltrove ve Ratatui'nin awesome listesi kadar

    • Bu aralar iyi bir masaüstü GUI platformu neredeyse kalmadığı için terminal daha cazip bir ortam hâline geldi
      Qt ya da GTK fazla büyük, Windows sık değişiyor ve Electron'la uğraşmak istemiyorum
      Terminalin kalitesi son dönemde arttı; bu yüzden küçük uygulamalar yapmak çok daha kolay
      LEGO ile havalı bir şeyler yapmanın kille heykel yapmaktan daha kolay olması benzetmesi tam oturuyor
    • TUI kütüphaneleri terminal render etmenin düşük seviyeli karmaşıklığını iyi soyutluyor; terminal artık IDE içindeki bir canvas gibi hissettiriyor
      Veri durumunu görselleştirirken tarayıcı render pipeline'ı kurmaya gerek kalmıyor
      Bu arada şöyle bir örnek görsel var
    • TUI'ler çoğunlukla çapraz platform ve doğrudan terminal içinde kullanılabildiği için bağlam değiştirme az oluyor
      Ghostty, WezTerm, Kitty, iTerm, Alacritty gibi modern terminaller GPU hızlandırma ve 24 bit renk desteği sunuyor
      Üstelik artık geliştiriciler IDE yerine terminalde Claude Code, Gemini CLI, Codex gibi araçları daha çok kullanıyor
    • Uzun süre kötü web arayüzleri çekmiş geliştiriciler için TUI taze bir alternatif
      Kısıtları çok ama bu sayede berbat bir UI üretmek de zorlaşıyor
      Basit ila orta karmaşıklıktaki yazılımlar için gerçekten çok uygun. Örnek olarak Midnight Commander'ı öneririm
    • Benim için TUI, bugünün aşırı tasarlanmış GUI dünyasından kaçış yolu
      Tasarımcılarla iş birliği giderek daha bürokratik ve verimsiz geliyor
      TUI, yüksek bilgi yoğunluğuna ve gereksiz boşlukları az olan temiz arayüzlere zorluyor
  • Rust'ta TUI'nin popüler olmasının nedeni GUI durumunun çok kötü olması
    Bunu Rust GUI kütüphaneleri anketinden görebilirsiniz
    Ben Rust'ta Qt kullanmak isterim ama QML, Slint, GTK, immediate mode UI gibi şeyleri istemiyorum
    Rust'ta Qt benzeri bir şey çıkmazsa gerçekten yazık olur gibi geliyor

    • Aslında Rust ile TUI yapanlar bunu sadece TUI'yi sevdikleri için yapıyor
      Ratatui kullanması o kadar keyifli bir framework ki GUI eksikliğiyle pek ilgisi yok
    • GUI, hangi dilde olursa olsun test, erişilebilirlik, i18n gibi yükleri beraberinde getiriyor
      CLI'nin yetersiz kaldığı ama tam bir GUI'nin fazla geldiği durumlarda TUI aradaki boşluğu iyi dolduruyor
    • Rust'ta geleneksel GUI framework'lerinin zor olmasının nedeni döngüsel referans yapıları
      Pencere-kapsayıcı-düğme arasındaki ebeveyn/çocuk referansları Rust'ın sahiplik modeliyle çakışıyor
      Qt'nin signal-slot mekanizmasını da Rust'ta uygulamak zor
    • Ben de Rust GUI ekosisteminin zor durumda olduğunu hissediyorum
      İhtiyacım olan crate'lerin çoğu WIP ya da terk edilmiş durumdaydı
      Popüler birkaç büyük crate dışında belgeler de çoğu zaman “C++ belgelerine bakın” seviyesinde
      Bunun bir nedeni Rust'ın hâlâ genç bir dil olması ama bence daha büyük sorun topluluğun paket bakımına yönelik motivasyonunun zayıf olması
    • Bu arada Zed, Rust ile yapılmış bir GUI editörü
      Ama GUI tarafının tamamen Rust ile yazılıp yazılmadığından emin değilim
  • Beni tamamen terminal içinde yaşatacak bir TUI web tarayıcısı bekliyorum
    sixel ya da shader gibi teknolojilerle grafik de desteklendiği için, video hariç yeterince mümkün görünüyor
    Reklam engellemeyi kolaylaştırdığı için şirketler bundan hoşlanmayabilir ama LLM için tarayıcı diye sunulursa belki ikna edilebilirler

    • Ama neden böyle bir şey yapmaya gerek olsun, emin değilim
      Terminal bir düşük çözünürlüklü karakter tamponu, dolayısıyla doğrudan GPU hızlandırmalı piksel render etmek çok daha verimli
    • Browsh diye bir proje var
      Firefox'u headless çalıştırıp sonucu terminalde ASCII olarak render ediyor. Oldukça havalı
    • Ben sık sık Chawan kullanıyorum. Gayet iyi
    • Aslında bu 90'lardan beri mümkündü
      Lynx ve w3m bunun başlıca örnekleri
    • Rust değil ama nimwave'e de bakılabilir
  • Yaptığım Markdown görüntüleyicisi mdfried'i tanıtıyorum
    Markdown'ın düz metin hâli okunaklı ama tarayıcıda görmek daha rahat olduğu için başlıkları görsel olarak render eden bir görüntüleyici yaptım
    Fontu bir kez ayarlamak gerekiyor ve satır içi görselleri de destekliyor
    Artık Kitty'nin text-sizing protokolünü kullanarak görsele dönüştürmeden doğrudan render etmek de mümkün

    • Gerçekten harika bir proje. Yalnız Ghostty bu protokolü henüz uygulamamış gibi görünüyor
  • Hollanda'daki Teletekst bir SSH arayüzü sunuyor
    Bu habere göre Ratatui ile yapılmış ve ssh teletekst.nl ile bağlanılabiliyor

  • Ratatui ile yapılmış küçük bir uygulamayı test ettim; sadece basit metin girişi yaparken bile CPU kullanımının %8'e çıkmasına şaşırdım
    Resmî örneği aynen kullanmıştım ama yine de böyleydi

    • Acaba debug build ile mi çalıştırdığını sormuş. cargo run varsayılan olarak debug modunda çalışır
  • Açık kaynak projem TironCalc'ı ana depo olan ironcalc içine entegre etmek istiyorum
    Rust ve Ratatui ile üzerinde çalışmak için iyi bir proje olduğunu düşünüyorum
    Ama Microsoft'un edit projesini görünce Ratatui'nin en iyi seçenek olup olmadığından artık emin değilim

  • Yaptığım Ratatui tabanlı TUI oyunu rebels-in-the-sky'ı tanıtıyorum

    • Oyunu çalıştırdım ve gerçekten çok hoşuma gitti. Hattrick gibi klasik futbol simülatörlerini andırıyor ama daha rafine bir havası var
      Yalnız depodaki videolar cihazımda açılmıyor
    • Artwork çok iyi. GitHub videoyu render etmediği için mp4'ü doğrudan indirmem gerekti
    • “Galakside geçen bir uzay korsanı basketbol P2P oyunu” açıklaması gerçekten akılda kalıyor
  • Gönderi başlığı biraz tuhaf geldi
    Rust'ın TUI devrimi hakkında bir yazı sanmıştım ama aslında Ratatui ile yapılmış uygulamaların derlemesiydi

    • Aslında burada kastedilen, bu crate'in Rust'taki TUI patlamasının nedeni olması olabilir
      Go tarafında Charm da benzer bir rol oynuyor
    • Başlık düzeltilmiş. HN yönergelerine göre ilke, orijinal başlığı korumak ama yanıltıcı olduğunda değiştirmek
    • Ratatui epey eski bir proje ve karmaşık TUI yapmam gerektiğinde ilk baktığım araç oluyor
    • Ben de artık başka alternatiflere ya da farklılaştırıcı yönlere bakmak istiyorum
  • Terminalde CLI tabanlı ajanları klasör bazında çalıştırabilen araçlara giderek daha çok ihtiyaç olduğunu düşünüyorum
    Örneğin hukuki uyumluluk kontrollerini otomatikleştirmekte kullanılabilir

    • Büyük kodlama ajanları zaten CLI modunu destekliyor
      Cline CLI, Opencode CLI, Codex CLI, Gemini CLI, Claude Code CLI ve daha fazlası var