paon

package module
v0.0.0-...-b5b2f04 Latest Latest
Warning

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

Go to latest
Published: Apr 21, 2024 License: Apache-2.0 Imports: 10 Imported by: 7

README

🦚 - Paon

A framework to build efficient, thread-aware, highly composable widgets based terminal user interface.

NOTE: Paon is still under active development, API is not stable.

Widgets

  • Text
  • TextInput
  • PasswordInput
  • Button
  • Drop-down
  • Checkbox
  • Radio

Layouts

  • HBox
  • VBox
  • Table
  • ScrollView
  • Form

🌠 Show your support

Please give a ⭐ if this project helped you!

📜 License

Apache2.0 © Alexandre Negrel

FOSSA Status

Documentation

Overview

Elegant TUI framework.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Application

type Application struct {
	// contains filtered or unexported fields
}

Application define a TUI application object.

func NewApp

func NewApp() (*Application, error)

NewApp returns a new Application object.

func (*Application) DoChannel

func (app *Application) DoChannel() chan<- func()

DoChannel returns a write-only channel that can be used to execute function on the main thread. Any write to the channel will enqueue a rendering of widgets tree. Note that rendering is throttled to avoid excessive rendering.

func (*Application) Start

func (app *Application) Start(ctx context.Context, root widgets.Root) error

Start starts the application console, event loop.

Directories

Path Synopsis
Common interfaces implemented by backends to abstract terminal / console interaction.
Common interfaces implemented by backends to abstract terminal / console interaction.
Color type and colors constants.
Color type and colors constants.
Backend agnostic drawing interface and utilities.
Backend agnostic drawing interface and utilities.
Event and Target definition and implementation.
Event and Target definition and implementation.
examples
calc Module
clock Module
counter Module
helloworld Module
pager Module
perf Module
ptop Module
Geometry utilities.
Geometry utilities.
Layout related types and utilities.
Layout related types and utilities.
Package tree provides a generic Node interface to build tree data structures.
Package tree provides a generic Node interface to build tree data structures.
Widget and Layout definition and implementation.
Widget and Layout definition and implementation.

Jump to

Keyboard shortcuts

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