- Una colección de diversos ejemplos de aplicaciones basadas en terminal (TUI) creadas con el framework Ratatui
- Incluye apps para distintos usos como monitoreo del sistema, exploración de archivos, análisis de red y visualización de datos
- Entre los ejemplos destacados se presentan Atuin (gestión del historial del shell), GitUI (interfaz para Git), Oatmeal (chat con LLM) y Yazi (administrador de archivos)
- Cada proyecto está escrito en Rust e incluye enlace a GitHub e imágenes de demostración
- Una recopilación de casos que muestra la escalabilidad y utilidad del desarrollo de interfaces de terminal en el ecosistema de Rust
Resumen general
- La página App Showcase de Ratatui enumera aplicaciones reales de interfaz de usuario de terminal (TUI) desarrolladas con Ratatui
- Cada entrada incluye un enlace al repositorio de GitHub, una breve descripción y una imagen o GIF de demostración
- Incluye más de 27 proyectos, con un rango amplio que va desde herramientas de sistema hasta juegos, IA y gestión de datos
Lista principal de aplicaciones
Atuin
- Reemplaza el historial tradicional del shell con una base de datos SQLite y registra contexto adicional al ejecutar comandos
Bandwhich
- Utilidad CLI que muestra el uso de red por proceso, conexión e IP/host remoto
Binsider
- Herramienta para realizar análisis binario desde la terminal
Bottom
- Monitor de sistema multiplataforma que visualiza el uso de recursos como CPU y memoria
Crossword
- Juego para disfrutar crucigramas en la terminal
Csvlens
- Visor especializado en archivos CSV, similar al comando
less, pero optimizado para la estructura CSV
Dua
- Herramienta de análisis de espacio en disco basada en procesamiento en paralelo, con función de borrado rápido
Fzf-make
- Herramienta CLI para ejecutar objetivos de
make usando un fuzzy finder
GitUI
- Interfaz TUI basada en Rust para trabajar con Git
Gpg-tui
- Interfaz de terminal para GnuPG
Joshuto
- Administrador de archivos estilo Ranger, escrito en Rust
Material
- Paleta de colores Material Design para terminal
Minesweep-rs
- Juego Buscaminas escrito en Rust
Oatmeal
- App de chat en terminal para conversar con LLM, con soporte para backends de ChatGPT u Ollama
- Incluye funciones como comandos slash, UI con burbujas de chat e integración con Neovim
Oha
- Envía carga a aplicaciones web y muestra los resultados en una TUI en tiempo real
Oxker
- TUI para controlar y monitorear contenedores Docker
OpenAPI-tui
- Herramienta para consultar rápidamente documentación OpenAPI desde la terminal
Rainfrog
- Herramienta ligera de terminal para interactuar con bases de datos
Rucola
- Ofrece funciones de gestión de notas Markdown y conversión a HTML
Scope-tui
- Implementa funciones de osciloscopio, vectorscopio y espectroscopio en la terminal
Slumber
- Ejecuta un cliente HTTP/REST en la terminal
Steer
- Agente de codificación con IA para desarrollo local y automatización
Taskwarrior-tui
- Interfaz de terminal para la herramienta de gestión de tareas Taskwarrior
Television
- Buscador basado en algoritmos de coincidencia difusa, con soporte para explorar múltiples fuentes de datos como archivos, Git y variables de entorno
Trippy
- Herramienta de diagnóstico de red que combina funciones de traceroute y ping
Xplr
- Explorador de archivos TUI rápido y hackeable
Yazi
- Administrador de archivos ultrarrápido basado en I/O asíncrona, escrito en Rust
Yozefu
- TUI interactiva para explorar datos de clústeres Kafka
- Permite filtrado detallado con un lenguaje de consultas similar a SQL
- Alternativa a AKHQ, Redpanda Console y el plugin de Kafka de JetBrains
Importancia del ecosistema Ratatui
- Todas las apps están construidas sobre el framework Ratatui, mostrando la diversidad y madurez del desarrollo de interfaces de terminal en el entorno Rust
- Cada proyecto está publicado como repositorio open source en GitHub, por lo que los desarrolladores pueden consultarlos directamente
- Esto sugiere que Ratatui se está consolidando como una herramienta estándar para el desarrollo de CLI/TUI en Rust
1 comentarios
Opiniones de Hacker News
Es interesante que últimamente haya tantos TUI hechos en Rust
Los que conozco son Awesome TUIs, terminaltrove y la lista awesome de Ratatui
Qt o GTK son demasiado grandes, Windows cambia seguido y no dan ganas de lidiar con Electron
La calidad de las terminales ha mejorado recientemente, así que es mucho más fácil crear apps pequeñas
La comparación de que es más fácil hacer algo genial con LEGO que esculpir con arcilla le queda perfecta
No hace falta construir un pipeline de renderizado del navegador para visualizar el estado de los datos
Como referencia, está esta imagen de ejemplo
Terminales modernas como Ghostty, WezTerm, Kitty, iTerm y Alacritty soportan aceleración por GPU y color de 24 bits
Además, hoy en día los desarrolladores usan más herramientas como Claude Code, Gemini CLI y Codex dentro de la terminal que en el IDE
Tienen muchas limitaciones, pero precisamente por eso también es más difícil crear una UI desastrosa
Encajan muy bien para software de complejidad simple a media. Recomiendo Midnight Commander como ejemplo
Colaborar con diseñadores se siente cada vez más burocrático e ineficiente
Los TUI fuerzan interfaces limpias con alta densidad de información y poco espacio en blanco innecesario
La razón por la que los TUI están de moda en Rust es que la situación de las GUI es muy mala
Eso se puede ver en la encuesta sobre librerías GUI de Rust
Yo quisiera usar Qt en Rust, pero no quiero QML, Slint, GTK ni UI de modo inmediato
Sería realmente una pena que no surgiera algo tipo Qt en Rust
Ratatui es un framework tan disfrutable de usar que no tiene nada que ver con la ausencia de GUI
Cuando un CLI se queda corto pero una GUI completa resulta excesiva, un TUI llena muy bien ese punto intermedio
Las referencias padre/hijo entre ventana-contenedor-botón chocan con el modelo de ownership de Rust
El mecanismo de signal-slot de Qt también es complicado de implementar en Rust
La mayoría de los crates que necesitaba estaban en estado WIP o abandonados
Fuera de unos pocos crates grandes y populares, la documentación estaba al nivel de “mira la documentación de C++”
Es cierto que Rust todavía es un lenguaje joven, pero me parece que el problema mayor es la falta de entusiasmo por mantener paquetes en la comunidad
Aun así, no está claro si la parte GUI está implementada únicamente en Rust
Estoy esperando un navegador web TUI que me permita vivir por completo dentro de la terminal
Con tecnologías como sixel o shaders también se pueden soportar gráficos, así que salvo por el video, parece bastante posible
Como bloquear anuncios sería fácil, tal vez a las empresas no les guste, pero si se vende como navegador para LLM quizá se les pueda convencer
La terminal es un buffer de caracteres de baja resolución, así que un renderizado de píxeles acelerado por GPU es simplemente mucho más eficiente
Ejecuta Firefox en modo headless y renderiza el resultado en ASCII en la terminal. Está bastante genial
Lynx y w3m son ejemplos representativos
Quiero presentar mi visor de Markdown mdfried
La legibilidad del Markdown en texto plano es buena, pero como es más cómodo verlo en el navegador, hice un visor que renderiza los encabezados como imágenes
Hay que configurar la fuente una vez, y también soporta imágenes inline
Ahora aprovecha el protocolo de text-sizing de Kitty para renderizar directamente sin convertir a imágenes
El Teletekst de los Países Bajos ofrece una interfaz por SSH
Según este artículo, fue hecho con Ratatui y se puede acceder con
ssh teletekst.nlProbé una app pequeña hecha con Ratatui y me sorprendió que el uso de CPU subiera hasta 8% solo con una entrada de texto simple
Pasó incluso usando el ejemplo oficial tal cual
cargo runusa modo debug por defectoQuiero integrar mi proyecto open source TironCalc en el repositorio principal ironcalc
Me parece un buen proyecto para trabajar con Rust y Ratatui
Pero después de ver el proyecto edit de Microsoft, ya no estoy seguro de que Ratatui sea la mejor opción
Quiero presentar mi juego TUI basado en Ratatui rebels-in-the-sky
Eso sí, el video del repositorio no se abre en mi dispositivo
Siento que el título de la publicación es un poco raro
Pensé que sería un artículo sobre la revolución TUI en Rust, pero en realidad era una recopilación de apps hechas con Ratatui
Charm en el ecosistema Go cumple un papel parecido
Siento que cada vez hacen más falta utilidades para ejecutar agentes basados en CLI por carpeta dentro de la terminal
Por ejemplo, podrían usarse para automatizar verificaciones de cumplimiento legal
Hay varios: Cline CLI, Opencode CLI, Codex CLI, Gemini CLI y Claude Code CLI