fluint

package module
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 27, 2026 License: MIT Imports: 0 Imported by: 0

README

Fluint

Fluint — High-Performance Go TUI Engine

🇬🇧 English | 🇷🇺 Русский | 🇨🇳 中文


An open-source Terminal User Interface (TUI) engine for Go built from scratch with an emphasis on smooth cell animations, advanced VFX (easing, sub-cell rendering, transitions), and an integrated UI kit.

Documentation

Full documentation is maintained in 3 mirrored languages:

Documentation

Overview

Package fluint is a TUI engine for Go, built from scratch with focus on smooth animations, VFX, and a built-in UI kit.

This is the root package. See sub-packages for the actual implementation:

  • internal/term: raw terminal I/O and escape sequence parsing
  • internal/platform: OS-specific abstractions
  • core/buffer: cell grid and double buffering (planned)
  • core/diff: minimal changeset computation (planned)
  • render/ansi: ANSI escape output (planned)
  • anim: animation and easing (planned)
  • layout: flexbox-like layout system (planned)
  • widgets: UI kit with functional options API (planned)

Directories

Path Synopsis
Package anim provides animation primitives for the fluint engine: easing functions, a zero-allocation Timeline, and Tween interpolation.
Package anim provides animation primitives for the fluint engine: easing functions, a zero-allocation Timeline, and Tween interpolation.
core
loop
Package loop implements the engine's frame scheduler and event demultiplexer.
Package loop implements the engine's frame scheduler and event demultiplexer.
examples
ui_kit command
ui_kit demonstrates all fluint subsystems working together: layout, widgets, style, and animation.
ui_kit demonstrates all fluint subsystems working together: layout, widgets, style, and animation.
vfx_demo command
vfx_demo demonstrates the Timeline & Tween system driving 10 concurrent animations at 60 fps.
vfx_demo demonstrates the Timeline & Tween system driving 10 concurrent animations at 60 fps.
internal
platform
Package platform provides OS-specific terminal operations behind build tags.
Package platform provides OS-specific terminal operations behind build tags.
term
Package term provides low-level terminal I/O: a zero-allocation escape sequence parser, ring buffer for stdin, terminal capabilities detection, and a pre-allocated write buffer for single-syscall output.
Package term provides low-level terminal I/O: a zero-allocation escape sequence parser, ring buffer for stdin, terminal capabilities detection, and a pre-allocated write buffer for single-syscall output.
Package layout implements a 1D Flexbox-like layout engine per ADR-0001.
Package layout implements a 1D Flexbox-like layout engine per ADR-0001.
render
Package style provides a value-semantic styling API for terminal widgets.
Package style provides a value-semantic styling API for terminal widgets.
Package widgets provides UI primitives (Text, Button, etc.) that render directly into a buffer.Buffer.
Package widgets provides UI primitives (Text, Button, etc.) that render directly into a buffer.Buffer.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL