Skip to content

fast&furious table based on ratatui. meant for large data models.

Notifications You must be signed in to change notification settings

thscharler/rat-ftable

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

54 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

crates.io Documentation License License

Table widget based on ratatui.

Could be used as a drop-in replacement for the ratatui table. But that's not the point of this widget.

This widget uses the TableData trait instead of rendering all the table-cells and putting them into a Vec. This way rendering time only depends on the screen-size not on the size of your data.

There is a variant that takes an Iterator of TableRowData. It has as few traps though. If the Iterator doesn't have an efficient skip() or if you can't give the number of rows this will iterate all your data for the necessary information. This might slow down everything a bit.

image

More bullet points:

  • Row and Column offset for rendering.
  • Pluggable selection with TableSelection
    • Allows row/column/cell selection.
    • Row/column/cell selection + Header/Footer selection each with its own style.
  • Basic key/mouse handling present.

Eventhandling is currently crossterm only. In practice event-handling is calling 1 or 2 functions on the state, so this should be easy to map to other systems. (Contributions welcome :)

About

fast&furious table based on ratatui. meant for large data models.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages