bubbletea/README.md

2.5 KiB

Bubble Tea

Bubble Tea Title Treatment
GoDoc Build Status

The fun, functional and stateful way to build terminal apps. A Go framework based on The Elm Architecture.

Bubble Tea is well-suited for simple and complex terminal applications, either inline, full-window, or a mix of both. It's been battle-tested in several large projects and is production-ready.

It features a standard framerate-based renderer which is used by default as well as a renderer for high-performance scrollable regions, which works alongside the main renderer.

To get started, see the tutorials and examples.

Bubble Tea in the Wild

For some Bubble Tea programs in production, see:

  • Glow: a markdown reader, browser and online markdown stash
  • The Charm Tool: the Charm user account manager

Libraries we use with Bubble Tea

  • Bubbles various Bubble Tea components we've built
  • Termenv: Advanced ANSI styling for terminal applications
  • Reflow: ANSI-aware methods for reflowing blocks of text
  • go-runewidth: Get the physical width of strings in terms of terminal cells. Many runes, such as East Asian charcters and emojis, are two cells wide, so measuring a layout with len() often won't cut it!

Acknowledgments

Based on The Elm Architecture by Evan Czaplicki et alia and go-tea by TJ Holowaychuk.

License

MIT


A Charm project.

the Charm logo

Charm热爱开源!