docs.rs failed to build rat-salsa-2.0.0
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build:
rat-salsa-4.0.1
rat-salsa-2
Runs an application event-loop for ratatui and crossterm.
It can
- poll multiple event-sources fairly
- run background tasks in one or more worker threads.
- run background tasks as async tasks.
- define timers.
- work as a message-queue for in-app messages.
- support focus-handling with SalsaContext::focus
All incoming events are converted to an application defined event-type, and are distributed by calling an event-handler function. This function returns a control-flow which dictates further actions.
Changes
Book
... coming soon(ish) ...
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.
- rat-dialog Stacks windows/dialogs above the main application.
Crates for specific 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-theme2 More colors, mainly.
Example
The examples directory contains some examples
- files.rs: Minimal filesystem browser.
- mdedit.rs: Minimal markdown editor.
- life.rs: Game of Life.
- async1.rs: Async tasks.
- logscroll.rs: Logfile view and find.
- theme_samples.rs: Theme show-room.
- turbo.rs: Reboot Turbo Pascal.
There are some starters too
- minimal.rs: Minimal application with a menubar and statusbar.
- ultra.rs: Absolute minimum setup.
