Repolode
ArthurSonzogni

ArthurSonzogni/FTXUI

Biblioteca de C++ basada en headers para crear interfaces de usuario de terminal con un estilo funcional y basado en componentes, sin dependencias externas.

Estrellas
10,829
Forks
628
Issues abiertos
34
Último commit
hace 13 horas

¿Qué es?

FTXUI es una biblioteca de C++ para crear interfaces de usuario de terminal. Permite describir diseños como un árbol de elementos combinados con funciones como hbox, vbox y gridbox, y los muestra en la terminal. Incluye componentes interactivos como botones, menús, campos de entrada, controles deslizantes, casillas de verificación y menús desplegables, que responden a eventos de teclado, mouse y cambio de tamaño.

La biblioteca está organizada en tres módulos: screen, para la representación de bajo nivel de colores y caracteres; dom, para el diseño y los estilos; y component, para la interacción del usuario y el bucle principal de eventos. Admite UTF-8 y caracteres de ancho completo, colores, decoraciones de texto, dibujo en canvas con caracteres braille o de bloques y animaciones. No tiene dependencias y se puede integrar mediante CMake FetchContent, Bazel, Meson, vcpkg, Conan o como una compilación amalgamada de un solo header; también admite módulos de C++20. Es compatible con Linux y macOS, WebAssembly y Windows.

Funciones clave

  • 01API funcional basada en componentes para componer diseños y widgets interactivos
  • 02Navegación con teclado y mouse, con widgets integrados como menús, campos de entrada y controles deslizantes
  • 03Diseño flexible con hbox, vbox, gridbox y flexbox
  • 04Dibujo en canvas con caracteres braille, de bloques o simples
  • 05Compatibilidad con UTF-8 y caracteres de ancho completo, sin dependencias externas

Casos de uso

  • Crear herramientas interactivas de línea de comandos con menús, formularios o paneles
  • Desarrollar juegos de terminal o visualizaciones animadas en modo texto
  • Crear monitores del sistema o visores de logs que se adapten al tamaño de la terminal

Inicio rápido

  1. 1

    Añade FTXUI a tu proyecto de C++ con CMake FetchContent, el método recomendado en el README

  2. 2

    Incluye el encabezado <ftxui/ftxui.hpp> y enlaza el destino de CMake ftxui::ftxui

Antes de usarlo

  • Los principales sistemas objetivo son Linux y macOS; la compatibilidad con Windows depende de las contribuciones.

Temas

Preguntas frecuentes

¿Qué es FTXUI?
Biblioteca de C++ basada en headers para crear interfaces de usuario de terminal con un estilo funcional y basado en componentes, sin dependencias externas. FTXUI es una biblioteca de C++ para crear interfaces de usuario de terminal. Permite describir diseños como un árbol de elementos combinados con funciones como hbox, vbox y gridbox, y los muestra en la terminal. Incluye componentes interactivos como botones, menús, campos de entrada, controles deslizantes, casillas de verificación y menús desplegables, que responden a eventos de teclado, mouse y cambio de tamaño.
¿FTXUI es gratuito? ¿Qué licencia tiene?
FTXUI es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿FTXUI sigue mantenido?
Mantenimiento activo. El último commit de FTXUI fue el 21 oct 2026.
¿Para qué puedo usar FTXUI?
Crear herramientas interactivas de línea de comandos con menús, formularios o paneles Desarrollar juegos de terminal o visualizaciones animadas en modo texto Crear monitores del sistema o visores de logs que se adapten al tamaño de la terminal
¿Cómo se instala FTXUI?
Añade FTXUI a tu proyecto de C++ con CMake FetchContent, el método recomendado en el README Incluye el encabezado <ftxui/ftxui.hpp> y enlaza el destino de CMake ftxui::ftxui
¿Dónde consigo FTXUI?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/ArthurSonzogni/FTXUI

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados