Ir al contenido

Arquitectura-Hexagonal

Todo TUI en Rust 5. Polling de eventos, el corte vertical de edición y cierre

·7 mins
La rata sirve el último plato. Corregimos el lag de entrada con polling de eventos no bloqueante, añadimos la funcionalidad de edición como un corte vertical completo desde la capa de aplicación hasta la TUI, observamos la máquina de estados crecer de 3 a 4 variantes con seguridad guiada por el compilador, y cerramos con las conclusiones clave de toda la migración.

Todo TUI en Rust 3. Eventos, seguridad de terminal y el momento de la verdad

·8 mins
La rata conecta los oídos. Implementamos manejadores de eventos por modo con crossterm, rediseñamos el mapeo de teclas para usar un toggle en vez de teclas separadas, resolvemos el problema de restauración de terminal con un patrón de captura-limpieza-retorno, y ejecutamos cargo test para descubrir que cero líneas cambiaron fuera del adaptador.

Todo TUI en Rust 1. Andamiaje del adaptador TUI y diseño de la máquina de estados

·8 mins
Arrancamos una nueva serie migrando el adaptador CLI a una TUI con ratatui. Configuramos las nuevas dependencias, diseñamos la estructura de módulos bajo adapters/tui/, modelamos los modos de interacción como un enum para hacer los estados inválidos irrepresentables, y resolvemos el puzzle de ownership al clonar un repositorio en una sesión persistente.

Todo CLI en Rust 5. Siguiente paso, pasar de CLI a TUI con ratatui

·12 mins
Cerramos la serie explorando qué implica migrar de CLI a TUI con ratatui: cómo cambia el modelo de interacción, qué fricciones introduce Rust con ownership y &mut en un event loop persistente, y por qué la arquitectura hexagonal absorbe el cambio sin cirugía.

Todo CLI en Rust 3. Persistencia JSON, contrato vs implementación

·18 mins
Tercera parte de la serie: definimos el contrato de persistencia con un trait genérico, implementamos dos adaptadores (in-memory y JSON a disco) y profundizamos en la diferencia entre interfaz e implementación como eje de la arquitectura hexagonal.