
FTXUI es una sencilla biblioteca C++ multiplataforma para interfaces de usuario basadas en terminal.
Características
- Estilo funcional. Inspirado en 1 y React
- Sin dependencias
- Multiplataforma.
- Sintaxis sencilla y elegante (en mi opinión)
- Navegación con teclado y ratón.
- Soporte para UTF8 y caracteres de ancho completo (→ 测试)
- Soporte para animaciones. Demo 1, Demo 2
- Soporte para dibujo. Demo
- Aprende con ejemplos y tutoriales
- Múltiples sistemas de construcción y paquetes:
- Buenas prácticas: documentación, pruebas, fuzzers, pruebas de rendimiento, CI automatizado, empaquetado automatizado, etc...
Ejemplo
#include <iostream>
text("left") | border,
text("middle") | border | flex,
text("right") | border,
});
Dimension::Full(),
Dimension::Fit(document)
);
}
return hbox({ text(std::to_string(int(progress *100))+"% ")|size(WIDTH, EQUAL, 5), gauge(progress), })
El espacio de nombres ftxui:: de FTXUI.
std::shared_ptr< Node > Element
Salida esperada:
┌────┐┌────────────────────────────────────┐┌─────┐
│left││middle ││right│
└────┘└────────────────────────────────────┘└─────┘
Plataformas soportadas
- Linux
- MacOS
- Windows
- WebAssembly