Repolode
charmbracelet

charmbracelet/bubbles

Набор готовых компонентов TUI — спиннер, ввод текста, таблица, список, viewport, справка и другие — для создания терминальных приложений на Go с Bubble Tea.

Звёзды
9,002
Форки
475
Открытые issues
250
Последний коммит
18 дней назад

Что это?

Bubbles — библиотека на Go с повторно используемыми компонентами терминального интерфейса, созданная для Bubble Tea — фреймворка для терминальных приложений на основе архитектуры Elm. Вместо того чтобы писать каждый виджет с нуля, разработчики могут использовать такие компоненты, как спиннер, однострочное и многострочное поля ввода, таблица с сортировкой, фильтруемый список, прокручиваемый viewport, индикатор выполнения, пагинатор, выбор файла, таймеры и секундомеры, а также автоматически создаваемое окно справки.

Каждый компонент — это модель Bubble Tea со своими методами Update и View, поэтому его можно встроить в более крупное приложение и объединять с другими компонентами. Вспомогательный пакет для привязки клавиш позволяет приложению задавать раскладки клавиш, давать пользователям возможность переназначать клавиши и создавать текст справки на основе тех же привязок. Компоненты поддерживают ввод Unicode, вставку текста, прокрутку и настраиваемое оформление. Библиотека версии 2 публикуется с путём импорта charm.land.

Ключевые возможности

  • 01Включает спиннер, поле ввода текста, текстовую область, таблицу, список, viewport и индикатор выполнения
  • 02Предоставляет пагинатор с отображением страниц точками или числами
  • 03Предлагает компонент выбора файлов с фильтрацией по расширению
  • 04Включает компоненты таймера и секундомера для обратного и прямого отсчёта
  • 05Автоматически создаёт окна справки на основе привязок клавиш

Сценарии использования

  • Добавление индикаторов загрузки и выполнения в CLI-инструмент на Go
  • Создание терминальной формы с несколькими текстовыми полями
  • Отображение прокручиваемых списков или табличных данных в приложении TUI
  • Предоставление пользователям возможности выбирать файлы и переназначать клавиши в терминальном приложении

Что важно знать

  • В README нет команды установки, поэтому показать краткое руководство по началу работы нельзя.
  • Для обновления с v1 до v2 нужно следовать отдельному руководству по обновлению.
  • Эти компоненты предназначены для приложений Bubble Tea, поэтому вам также понадобится этот фреймворк.

Темы

Частые вопросы

Что такое bubbles?
Набор готовых компонентов TUI — спиннер, ввод текста, таблица, список, viewport, справка и другие — для создания терминальных приложений на Go с Bubble Tea. Bubbles — библиотека на Go с повторно используемыми компонентами терминального интерфейса, созданная для Bubble Tea — фреймворка для терминальных приложений на основе архитектуры Elm. Вместо того чтобы писать каждый виджет с нуля, разработчики могут использовать такие компоненты, как спиннер, однострочное и многострочное поля ввода, таблица с сортировкой, фильтруемый список, прокручиваемый viewport, индикатор выполнения, пагинатор, выбор файла, таймеры и секундомеры, а также автоматически создаваемое окно справки.
bubbles можно использовать бесплатно? Какая у него лицензия?
bubbles распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
bubbles всё ещё поддерживается?
Активно поддерживается. Последний коммит в bubbles — 4 окт. 2026 г..
Для чего можно использовать bubbles?
Добавление индикаторов загрузки и выполнения в CLI-инструмент на Go Создание терминальной формы с несколькими текстовыми полями Отображение прокручиваемых списков или табличных данных в приложении TUI Предоставление пользователям возможности выбирать файлы и переназначать клавиши в терминальном приложении
Где скачать bubbles?
Исходный код и инструкции по установке — на GitHub: https://github.com/charmbracelet/bubbles

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты