29 releases (2 stable)

1.0.1 Feb 6, 2025
0.32.2 Jan 27, 2025
0.28.2 Dec 29, 2024
0.28.0 Nov 1, 2024
0.22.2 Jul 3, 2024

#330 in Command-line interface

Download history 3/week @ 2024-11-13 5/week @ 2024-11-20 1/week @ 2024-12-04 147/week @ 2024-12-11 4/week @ 2024-12-18 102/week @ 2024-12-25 552/week @ 2025-01-01 26/week @ 2025-01-08 108/week @ 2025-01-15 264/week @ 2025-01-22 216/week @ 2025-01-29 187/week @ 2025-02-05 70/week @ 2025-02-12 7/week @ 2025-02-19 11/week @ 2025-02-26

288 downloads per month
Used in 2 crates

MIT/Apache

755KB
17K SLoC

stable crates.io Documentation License License

rat-salsa

An application event-loop with ratatui and crossterm.

image

rat-salsa provides

Changes

Changes

Book

For a start you can have a look at the book.

Companion Crates

  • rat-widget widget library. Incorporates everything below, but each crate can be used on its own too.

    Foundational crates:

    • rat-event Defines the primitives for event-handling.
    • rat-cursor Defines just one trait to propagate the required screen cursor position.
    • rat-focus Primitives for focus-handling.
    • rat-reloc Relocate widgets after rendering. Needed support for view-like widgets.
    • rat-scrolled Utility widgets for scrolling.
    • rat-popup Utility widget to help with popups.

    Crates that deal with specific categories of widgets.

    • rat-ftable table. uses traits to render your data, and renders only the visible cells. this makes rendering effectively O(1) in regard to the number of rows.
    • rat-menu Menu widgets.
    • rat-text Text/Value input widgets.
    • rat-markdown Extension for TextArea for markdown.

    And my 10ct on theming.

    • rat-theme Color-palettes and widget styles.
  • rat-window Stopped for now. Implement windows in the tui. Can work with dyn StatefulWidgets too. The groundwork is done, but it's missing a lot of implementation.

Example

The examples directory contains some examples

There are some starters too

  • minimal.rs: Minimal application with a menubar and statusbar.
  • ultra.rs: Absolute minimum setup.

image

Dependencies

~12–24MB
~331K SLoC