Framework de Go para interfaces de terminal basado en Elm Architecture, con diseño compatible con Unicode, renderizado en línea o a pantalla completa y una biblioteca de componentes.
charmbracelet/bubbles
Colección de componentes TUI listos para usar (spinner, entrada de texto, tabla, lista, viewport, ayuda y más) para crear aplicaciones de terminal con Bubble Tea en Go.
- Estrellas
- 9,002
- Forks
- 475
- Issues abiertos
- 250
- Último commit
- hace 18 días
¿Qué es?
Bubbles es una biblioteca de Go con componentes reutilizables de interfaz de usuario para terminal, creada para Bubble Tea, el framework de arquitectura Elm para aplicaciones de terminal. En lugar de escribir cada widget desde cero, los desarrolladores pueden incorporar componentes como un spinner, entradas de texto de una y varias líneas, una tabla con opciones de ordenación, una lista con filtros, un viewport desplazable, una barra de progreso, un paginador, un selector de archivos, temporizadores y cronómetros, y una vista de ayuda generada automáticamente.
Cada componente es un modelo de Bubble Tea con sus propios métodos Update y View, por lo que se puede integrar en una aplicación más grande y combinar con otros componentes. Un paquete auxiliar para asignar teclas permite definir mapas de teclas, dejar que los usuarios reasignen teclas y generar texto de ayuda a partir de las mismas asignaciones. Los componentes admiten entrada Unicode, pegar texto, desplazamiento y estilos personalizables. La biblioteca está en la versión 2 y se publica con la ruta de importación charm.land.
Funciones clave
- 01Incluye componentes de spinner, entrada de texto, área de texto, tabla, lista, viewport y progreso
- 02Ofrece un paginador con visualización de páginas mediante puntos o números
- 03Incluye un selector de archivos que permite filtrar por extensión
- 04Incluye componentes de temporizador y cronómetro para contar hacia atrás y hacia adelante
- 05Genera vistas de ayuda automáticamente a partir de las asignaciones de teclas
Casos de uso
- Añadir indicadores de carga y barras de progreso a una herramienta de línea de comandos escrita en Go
- Crear un formulario de terminal con varios campos de texto
- Mostrar listas desplazables o datos tabulares en una aplicación TUI
- Permitir que los usuarios seleccionen archivos o reasignen combinaciones de teclas dentro de una aplicación de terminal
Antes de usarlo
- El README no incluye ningún comando de instalación, así que no se puede mostrar una guía de inicio rápido.
- Para actualizar de v1 a v2, hay que seguir una guía de actualización independiente.
- Estos componentes están diseñados para aplicaciones de Bubble Tea, por lo que también necesitas ese framework.
Temas
Preguntas frecuentes
- ¿Qué es bubbles?
- Colección de componentes TUI listos para usar (spinner, entrada de texto, tabla, lista, viewport, ayuda y más) para crear aplicaciones de terminal con Bubble Tea en Go. Bubbles es una biblioteca de Go con componentes reutilizables de interfaz de usuario para terminal, creada para Bubble Tea, el framework de arquitectura Elm para aplicaciones de terminal. En lugar de escribir cada widget desde cero, los desarrolladores pueden incorporar componentes como un spinner, entradas de texto de una y varias líneas, una tabla con opciones de ordenación, una lista con filtros, un viewport desplazable, una barra de progreso, un paginador, un selector de archivos, temporizadores y cronómetros, y una vista de ayuda generada automáticamente.
- ¿bubbles es gratuito? ¿Qué licencia tiene?
- bubbles es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿bubbles sigue mantenido?
- Mantenimiento activo. El último commit de bubbles fue el 4 oct 2026.
- ¿Para qué puedo usar bubbles?
- Añadir indicadores de carga y barras de progreso a una herramienta de línea de comandos escrita en Go Crear un formulario de terminal con varios campos de texto Mostrar listas desplazables o datos tabulares en una aplicación TUI Permitir que los usuarios seleccionen archivos o reasignen combinaciones de teclas dentro de una aplicación de terminal
- ¿Dónde consigo bubbles?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/charmbracelet/bubbles
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Un framework de Go para crear interfaces de usuario de terminal con el patrón modelo-actualización-vista de The Elm Architecture.
Un dashboard de terminal configurable con YAML y basado en Bubble Tea, donde un único archivo define fuentes de datos de comandos de shell y una cuadrícula de widgets.
Lector y renderizador de Markdown para la terminal que muestra archivos .md y repositorios con formato en la CLI.
Biblioteca de Go para dar estilo y diseñar interfaces de terminal basadas en texto con definiciones declarativas de estilos similares a CSS.
Un gestor de descargas para terminal, controlado con el teclado y escrito en Go, que divide los archivos en fragmentos paralelos y descarga desde varios mirrors.