Elm Architecture 기반의 Go 터미널 UI 프레임워크로, Unicode를 고려한 레이아웃, 인라인 및 전체 화면 렌더링, 컴포넌트 라이브러리를 제공합니다.
charmbracelet/bubbles
Go로 Bubble Tea 터미널 앱을 만들 때 사용하는 스피너, 텍스트 입력, 테이블, 목록, 뷰포트, 도움말 등의 재사용 가능한 TUI 컴포넌트 모음입니다.
- 스타
- 9,002
- 포크
- 475
- 열린 이슈
- 250
- 마지막 커밋
- 18일 전
어떤 프로젝트인가요?
Bubbles는 터미널 앱용 Elm 아키텍처 프레임워크인 Bubble Tea를 위해 만든 Go 재사용 가능 터미널 UI 컴포넌트 라이브러리입니다. 개발자는 모든 위젯을 처음부터 작성하는 대신 스피너, 한 줄 및 여러 줄 텍스트 입력, 정렬을 지원하는 테이블, 필터링 가능한 목록, 스크롤 가능한 뷰포트, 진행률 표시줄, 페이지네이터, 파일 선택기, 타이머와 스톱워치, 자동 생성 도움말 화면 등의 컴포넌트를 바로 사용할 수 있습니다.
각 컴포넌트는 자체 Update 및 View 메서드를 갖춘 Bubble Tea 모델이므로, 더 큰 애플리케이션에 포함하고 다른 컴포넌트와 조합할 수 있습니다. 키 바인딩 헬퍼 패키지를 사용하면 애플리케이션에서 키맵을 정의하고, 사용자가 키를 재지정하도록 허용하며, 동일한 바인딩을 바탕으로 도움말 텍스트를 생성할 수 있습니다. 컴포넌트는 유니코드 입력, 붙여넣기, 스크롤 및 사용자 지정 스타일을 지원합니다. 라이브러리는 버전 2이며 charm.land import 경로로 배포됩니다.
핵심 기능
- 01스피너, 텍스트 입력, 텍스트 영역, 테이블, 목록, 뷰포트 및 진행률 컴포넌트를 제공합니다
- 02점 또는 숫자로 페이지를 표시하는 페이지네이터를 제공합니다
- 03파일 확장자로 필터링할 수 있는 파일 선택기를 제공합니다
- 04카운트다운 및 카운트업에 사용할 타이머와 스톱워치 컴포넌트를 포함합니다
- 05키 바인딩을 바탕으로 도움말 화면을 자동 생성합니다
활용 사례
- Go 커맨드라인 도구에 로딩 표시기와 진행률 표시줄 추가하기
- 여러 텍스트 필드가 있는 터미널 폼 만들기
- TUI 애플리케이션에서 스크롤 가능한 목록이나 표 형식 데이터 표시하기
- 터미널 앱에서 사용자가 파일을 선택하거나 키 바인딩을 재지정하도록 지원하기
사용 전 알아둘 점
- README에 설치 명령어가 없어 빠른 시작을 표시할 수 없습니다.
- v1에서 v2로 업그레이드하려면 별도의 업그레이드 가이드를 따라야 합니다.
- 이 구성 요소는 Bubble Tea 앱용으로 만들어졌으므로 해당 프레임워크도 필요합니다.
토픽
자주 묻는 질문
- bubbles은(는) 무엇인가요?
- Go로 Bubble Tea 터미널 앱을 만들 때 사용하는 스피너, 텍스트 입력, 테이블, 목록, 뷰포트, 도움말 등의 재사용 가능한 TUI 컴포넌트 모음입니다. Bubbles는 터미널 앱용 Elm 아키텍처 프레임워크인 Bubble Tea를 위해 만든 Go 재사용 가능 터미널 UI 컴포넌트 라이브러리입니다. 개발자는 모든 위젯을 처음부터 작성하는 대신 스피너, 한 줄 및 여러 줄 텍스트 입력, 정렬을 지원하는 테이블, 필터링 가능한 목록, 스크롤 가능한 뷰포트, 진행률 표시줄, 페이지네이터, 파일 선택기, 타이머와 스톱워치, 자동 생성 도움말 화면 등의 컴포넌트를 바로 사용할 수 있습니다.
- bubbles은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- bubbles은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- bubbles은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. bubbles의 마지막 커밋은 2026년 10월 4일입니다.
- bubbles은(는) 어디에 사용할 수 있나요?
- Go 커맨드라인 도구에 로딩 표시기와 진행률 표시줄 추가하기 여러 텍스트 필드가 있는 터미널 폼 만들기 TUI 애플리케이션에서 스크롤 가능한 목록이나 표 형식 데이터 표시하기 터미널 앱에서 사용자가 파일을 선택하거나 키 바인딩을 재지정하도록 지원하기
- bubbles은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/charmbracelet/bubbles
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
The Elm Architecture의 모델-업데이트-뷰 패턴을 사용해 터미널 UI를 만드는 Go 프레임워크입니다.
Bubble Tea 기반의 설정형 터미널 대시보드로, YAML 파일 하나로 셸 명령 데이터 소스와 위젯 그리드를 정의합니다.
파일을 병렬 청크로 나누고 여러 미러에서 다운로드하는 Go 기반 키보드 중심 터미널 다운로드 관리자