Repolode
charmbracelet

charmbracelet/bubbles

Uma coleção de componentes de TUI prontos (spinner, entrada de texto, tabela, lista, viewport, ajuda e mais) para criar apps de terminal com Bubble Tea em Go.

Estrelas
9,002
Forks
475
Issues abertas
250
Último commit
há 18 dias

O que é?

Bubbles é uma biblioteca Go de componentes reutilizáveis de interface de terminal, criada para o Bubble Tea, um framework de apps de terminal baseado na arquitetura Elm. Em vez de escrever cada widget do zero, os desenvolvedores podem incluir componentes como spinner, entradas de texto de uma ou várias linhas, tabela com ordenação, lista com filtros, viewport com rolagem, barra de progresso, paginador, seletor de arquivos, temporizadores e cronômetros, além de uma tela de ajuda gerada automaticamente.

Cada componente é um modelo do Bubble Tea com seus próprios métodos Update e View, então pode ser integrado a uma aplicação maior e combinado com outros componentes. Um pacote auxiliar para key bindings permite que as aplicações definam mapas de teclas, ofereçam aos usuários a opção de remapear teclas e gerem textos de ajuda a partir dos mesmos bindings. Os componentes oferecem suporte a entrada Unicode, colagem, rolagem e estilos personalizáveis. A biblioteca está na versão 2 e é publicada pelo caminho de importação charm.land.

Recursos principais

  • 01Inclui componentes de spinner, entrada de texto, área de texto, tabela, lista, viewport e progresso
  • 02Oferece um paginador com exibição de páginas em pontos ou números
  • 03Disponibiliza um seletor de arquivos que pode filtrar por extensão
  • 04Inclui componentes de temporizador e cronômetro para contagem regressiva e progressiva
  • 05Gera telas de ajuda automaticamente a partir dos key bindings

Casos de uso

  • Adicionar indicadores de carregamento e barras de progresso a uma ferramenta de linha de comando em Go
  • Criar um formulário de terminal com vários campos de texto
  • Exibir listas com rolagem ou dados tabulares em uma aplicação TUI
  • Permitir que usuários selecionem arquivos ou remapeiem key bindings dentro de um app de terminal

Antes de usar

  • O README não informa um comando de instalação, então não há um guia de início rápido para mostrar.
  • Para atualizar da v1 para a v2, é necessário seguir um guia de atualização separado.
  • Esses componentes foram criados para apps Bubble Tea, então você também precisa desse framework.

Tópicos

Perguntas frequentes

O que é bubbles?
Uma coleção de componentes de TUI prontos (spinner, entrada de texto, tabela, lista, viewport, ajuda e mais) para criar apps de terminal com Bubble Tea em Go. Bubbles é uma biblioteca Go de componentes reutilizáveis de interface de terminal, criada para o Bubble Tea, um framework de apps de terminal baseado na arquitetura Elm. Em vez de escrever cada widget do zero, os desenvolvedores podem incluir componentes como spinner, entradas de texto de uma ou várias linhas, tabela com ordenação, lista com filtros, viewport com rolagem, barra de progresso, paginador, seletor de arquivos, temporizadores e cronômetros, além de uma tela de ajuda gerada automaticamente.
bubbles é gratuito? Qual é a licença?
bubbles é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
bubbles ainda é mantido?
Manutenção ativa. O último commit de bubbles foi em 4 de out. de 2026.
Para que posso usar bubbles?
Adicionar indicadores de carregamento e barras de progresso a uma ferramenta de linha de comando em Go Criar um formulário de terminal com vários campos de texto Exibir listas com rolagem ou dados tabulares em uma aplicação TUI Permitir que usuários selecionem arquivos ou remapeiem key bindings dentro de um app de terminal
Onde consigo bubbles?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/charmbracelet/bubbles

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados