A Rust crate for cooking up terminal user interfaces (TUIs) 👨🍳🐀 https://ratatui.rs
1236 matches across 7 categories. Click a row to expand file-level details.
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | ratatui-termion/src/lib.rs | 1 | // show the feature flags in the generated documentation |
| LOW | ratatui-termion/src/lib.rs | 21 | //! This crate provides the [Termion] backend implementation for Ratatui. |
| LOW | ratatui-termion/src/lib.rs | 61 | /// This is done by calling [`IntoRawMode::into_raw_mode()`] and |
| LOW | ratatui-termion/src/lib.rs | 81 | /// let writer = stderr().into_raw_mode()?.into_alternate_screen()?; |
| LOW | ratatui-termion/src/lib.rs | 101 | writer: W, |
| LOW | ratatui/Cargo.toml | 21 | rustdoc-args = ["--cfg", "docsrs"] |
| LOW | ratatui/Cargo.toml | 101 | ## Enable all unstable features. |
| LOW | ratatui/tests/state_serde.rs | 1 | //! State like [`ListState`], [`TableState`] and [`ScrollbarState`] can be serialized and |
| LOW | ratatui/src/lib.rs | 1 | #![no_std] |
| LOW | ratatui/src/lib.rs | 21 | //! </div> |
| LOW | ratatui/src/lib.rs | 41 | //! fn main() -> std::io::Result<()> { |
| LOW | ratatui/src/lib.rs | 61 | //! Most application authors should start with one of these entry points: |
| LOW | ratatui/src/lib.rs | 81 | //! contracts |
| LOW | ratatui/src/lib.rs | 101 | //! You can also watch the [FOSDEM 2024 talk] about Ratatui which gives a brief introduction to |
| LOW | ratatui/src/lib.rs | 121 | //! |
| LOW | ratatui/src/lib.rs | 141 | //! |
| LOW | ratatui/src/lib.rs | 161 | //! break Ok(()); |
| LOW | ratatui/src/lib.rs | 181 | //! let mut terminal = ratatui::init(); |
| LOW | ratatui/src/lib.rs | 201 | //! for the full chooser including `try_*` and `*_with_options`. |
| LOW | ratatui/src/lib.rs | 221 | //! are drawn to the terminal. See the [Widgets] section of the [Ratatui Website] and the [Widget |
| LOW | ratatui/src/lib.rs | 241 | //! let text = Paragraph::new("Hello World!"); |
| LOW | ratatui/src/lib.rs | 261 | //! [`Terminal`] cursor methods can be overwritten by the next render pass if that pass sets |
| LOW | ratatui/src/lib.rs | 281 | //! // handle other key events |
| LOW | ratatui/src/lib.rs | 301 | //! use ratatui::layout::{Constraint, Layout}; |
| LOW | ratatui/src/lib.rs | 321 | //! ```text |
| LOW | ratatui/src/lib.rs | 341 | //! ```rust,no_run |
| LOW | ratatui/src/lib.rs | 361 | //! ]); |
| LOW | ratatui/src/lib.rs | 381 | //! [Installation]: https://ratatui.rs/installation/ |
| LOW | ratatui/src/lib.rs | 401 | //! [Styling Recipes]: https://ratatui.rs/recipes/render/ |
| LOW | ratatui/src/lib.rs | 421 | //! [`style` module]: style |
| LOW | ratatui/src/lib.rs | 441 | //! [Crate Badge]: https://img.shields.io/crates/v/ratatui?logo=rust&style=flat-square&logoColor=E05D44&color=E05D44 |
| LOW | ratatui/src/lib.rs | 461 | //! [`ratatui-termwiz`]: https://crates.io/crates/ratatui-termwiz |
| LOW | ratatui/src/init.rs | 1 | //! Terminal initialization and restoration functions. |
| LOW | ratatui/src/init.rs | 21 | //! |
| LOW | ratatui/src/init.rs | 41 | //! - [`DefaultTerminal`] - A type alias for `Terminal<CrosstermBackend<Stdout>>`, providing a |
| LOW | ratatui/src/init.rs | 61 | //! - [`try_restore`] - Same as [`restore`] but returns a `Result` instead of printing errors. |
| LOW | ratatui/src/init.rs | 81 | //! |
| LOW | ratatui/src/init.rs | 101 | //! _ => {} |
| LOW | ratatui/src/init.rs | 121 | //! ``` |
| LOW | ratatui/src/init.rs | 141 | //! loop { |
| LOW | ratatui/src/init.rs | 161 | //! let mut terminal = ratatui::try_init_with_options(options)?; |
| LOW | ratatui/src/init.rs | 181 | //! |
| LOW | ratatui/src/init.rs | 201 | use ratatui_core::terminal::{Terminal, TerminalOptions}; |
| LOW | ratatui/src/init.rs | 221 | /// This function is a convenience wrapper around [`init`] and [`restore`], and is useful for simple |
| LOW | ratatui/src/init.rs | 241 | /// } |
| LOW | ratatui/src/init.rs | 261 | /// terminal.draw(|frame| frame.render_widget(format!("{GREETING}"), frame.area()))?; |
| LOW | ratatui/src/init.rs | 281 | /// } |
| LOW | ratatui/src/init.rs | 301 | /// Ok(()) |
| LOW | ratatui/src/init.rs | 321 | { |
| LOW | ratatui/src/init.rs | 341 | /// |
| LOW | ratatui/src/init.rs | 361 | /// |
| LOW | ratatui/src/init.rs | 381 | /// Ensure that this method is called *after* your app installs any other panic hooks to ensure the |
| LOW | ratatui/src/init.rs | 401 | let backend = CrosstermBackend::new(stdout()); |
| LOW | ratatui/src/init.rs | 421 | /// |
| LOW | ratatui/src/init.rs | 441 | /// ```rust,no_run |
| LOW | ratatui/src/init.rs | 461 | /// - Raw mode is enabled |
| LOW | ratatui/src/init.rs | 481 | /// # Examples |
| LOW | ratatui/src/init.rs | 501 | /// This function should be called before the program exits to ensure that the terminal is |
| LOW | ratatui/src/init.rs | 521 | /// ```rust,no_run |
| LOW | ratatui/src/init.rs | 541 | /// Use [`restore`] instead of this function when you don't need to handle the error yourself, as |
| 969 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | ratatui/src/lib.rs | 322 | //! Title Bar─────────────────────────────────── |
| MEDIUM | ratatui/src/lib.rs | 323 | //! ┌Left────────────────┐┌Right───────────────┐ |
| MEDIUM | ratatui/src/lib.rs | 325 | //! └────────────────────┘└────────────────────┘ |
| MEDIUM | ratatui/src/lib.rs | 326 | //! Status Bar────────────────────────────────── |
| MEDIUM | examples/apps/constraint-explorer/src/main.rs | 62 | /// ┌──────────────┐ |
| MEDIUM | examples/apps/constraint-explorer/src/main.rs | 65 | /// └──────────────┘ |
| MEDIUM | ratatui-core/src/layout.rs | 25 | //! ┌─────────────→ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 833 | // <───────────────────────────────────area_size──────────────────────────────────> |
| MEDIUM | ratatui-core/src/layout/layout.rs | 836 | // ┌────┬───────────────────┬────┬─────variables─────┬────┬───────────────────┬────┐ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 839 | // ┌ ┐┌──────────────────┐┌ ┐┌──────────────────┐┌ ┐┌──────────────────┐┌ ┐ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 841 | // └ ┘└──────────────────┘└ ┘└──────────────────┘└ ┘└──────────────────┘└ ┘ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 844 | // └─┬──┶━━━━━━━━━┳━━━━━━━━━┵─┬──┶━━━━━━━━━┳━━━━━━━━━┵─┬──┶━━━━━━━━━┳━━━━━━━━━┵─┬──┘ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 846 | // └────────────╂───────────┴────────────╂───────────┴────────────╂──Spacers──┘ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 848 | // ┗━━━━━━━━━━━━━━━━━━━━━━━━┻━━━━━━━━Segments━━━━━━━━┛ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 931 | // ┌────┬───────────────────┬────┬─────variables─────┬────┬───────────────────┬────┐ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 934 | // ┌ ┐┌──────────────────┐┌ ┐┌──────────────────┐┌ ┐┌──────────────────┐┌ ┐ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 936 | // └ ┘└──────────────────┘└ ┘└──────────────────┘└ ┘└──────────────────┘└ ┘ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1111 | /// ┌──────┐┌──────┐ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1113 | /// └──────┘└──────┘ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1116 | /// ┌──────┐┌────────────┐ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1118 | /// └──────┘└────────────┘ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1298 | /// ┌────────┐ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1300 | /// └────────┘ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1305 | /// ┌────────┐ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1307 | /// └────────┘ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1312 | /// ┌───────────┐ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1314 | /// └───────────┘ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1319 | /// ┌───────────────┐ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1321 | /// └───────────────┘ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1326 | /// ┌────────────┐ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1328 | /// └────────────┘ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1333 | /// ┌────────┐ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1335 | /// └────────┘ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1340 | /// ┌────────┐ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1342 | /// └────────┘ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1347 | /// ┌─────────────────────┐ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1349 | /// └─────────────────────┘ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1354 | /// ┌────────────┐ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1356 | /// └────────────┘ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 30 | // ┌ ┐┌──────────────────┐┌ ┐┌──────────────────┐┌ ┐┌──────────────────┐┌ ┐ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 32 | // └ ┘└──────────────────┘└ ┘└──────────────────┘└ ┘└──────────────────┘└ ┘ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1368 | /// ┌───────┐ |
| MEDIUM | ratatui-core/src/layout/layout.rs | 1370 | /// └───────┘ |
| MEDIUM | ratatui-core/src/layout/constraint.rs | 82 | /// ┌────────────────────────────┐┌──────────────────┐ |
| MEDIUM | ratatui-core/src/layout/constraint.rs | 84 | /// └────────────────────────────┘└──────────────────┘ |
| MEDIUM | ratatui-core/src/layout/constraint.rs | 90 | /// ┌──────────────────────────────────────┐┌────────┐ |
| MEDIUM | ratatui-core/src/layout/constraint.rs | 92 | /// └──────────────────────────────────────┘└────────┘ |
| MEDIUM | ratatui-core/src/layout/constraint.rs | 105 | /// ┌────────────────────────────┐┌──────────────────┐ |
| MEDIUM | ratatui-core/src/layout/constraint.rs | 107 | /// └────────────────────────────┘└──────────────────┘ |
| MEDIUM | ratatui-core/src/layout/constraint.rs | 113 | /// ┌──────────────────────────────────────┐┌────────┐ |
| MEDIUM | ratatui-core/src/layout/constraint.rs | 115 | /// └──────────────────────────────────────┘└────────┘ |
| MEDIUM | ratatui-core/src/layout/constraint.rs | 128 | /// ┌──────────────────┐┌──────────────────┐ |
| MEDIUM | ratatui-core/src/layout/constraint.rs | 130 | /// └──────────────────┘└──────────────────┘ |
| MEDIUM | ratatui-core/src/layout/constraint.rs | 136 | /// ┌──────────────────┐┌────────────────────────────┐ |
| MEDIUM | ratatui-core/src/layout/constraint.rs | 138 | /// └──────────────────┘└────────────────────────────┘ |
| MEDIUM | ratatui-core/src/layout/constraint.rs | 156 | /// ┌────────────────────────────────────┐┌──────────┐ |
| MEDIUM | ratatui-core/src/layout/constraint.rs | 158 | /// └────────────────────────────────────┘└──────────┘ |
| MEDIUM | ratatui-core/src/layout/constraint.rs | 164 | /// ┌───────────────────────┐┌───────────────────────┐ |
| MEDIUM | ratatui-core/src/layout/constraint.rs | 166 | /// └───────────────────────┘└───────────────────────┘ |
| MEDIUM | ratatui-core/src/layout/constraint.rs | 180 | /// ┌───────────────────────┐┌───────────────────────┐ |
| 130 more matches not shown… | |||
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | …mples/concepts/state/src/bin/nested-stateful-widget.rs | 5 | //! and want to leverage the benefits of the StatefulWidget pattern at multiple levels. |
| MEDIUM | .github/workflows/ci.yml | 25 | # without having to wait for the comprehensive matrix of tests to complete. |
| MEDIUM | ratatui-core/src/backend.rs | 70 | //! This creates a seamless transition between the application and the regular terminal session, as |
| MEDIUM | ratatui-widgets/src/clear.rs | 27 | /// For a more complete example how to utilize `Clear` to realize popups see |
| MEDIUM | ratatui-widgets/src/block.rs | 205 | /// - [Collapse borders recipe] - Techniques for creating seamless layouts (on the ratatui website) |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | examples/apps/popup/src/main.rs | 59 | let paragraph = Paragraph::new("Lorem ipsum").block(popup_block); |
| LOW | ratatui-widgets/examples/scrollbar.rs | 109 | Line::from_iter(["Lorem ipsum dolor sit amet, consectetur adipiscing elit.".repeat(10)]), |
| LOW | ratatui-widgets/examples/scrollbar.rs | 109 | Line::from_iter(["Lorem ipsum dolor sit amet, consectetur adipiscing elit.".repeat(10)]), |
| LOW | ratatui-widgets/examples/shadow.rs | 124 | let sentence = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore |
| LOW | ratatui-widgets/examples/shadow.rs | 124 | let sentence = "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore |
| LOW | ratatui-widgets/src/paragraph.rs | 1325 | let paragraph = Paragraph::new("Lorem ipsum"); |
| LOW | ratatui-widgets/src/paragraph.rs | 1334 | let paragraph = Paragraph::new("Lorem ipsum"); |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | examples/apps/todo-list/src/main.rs | 80 | "Minnak loves to be pet by you! Don't forget to pet and give some treats!", |
| MEDIUM | ratatui-core/src/layout.rs | 82 | //! Here's a simple example of creating a basic layout using the [`Layout`] struct: |
| Severity | File | Line | Snippet |
|---|---|---|---|
| LOW | .github/workflows/check-pr.yml | 65 | # Check if pattern matches |
| LOW | .github/workflows/ci.yml | 198 | # Check if README.md is up-to-date with the crate's documentation. |
| Severity | File | Line | Snippet |
|---|---|---|---|
| MEDIUM | .github/workflows/release-plz.yml | 44 | # Create a PR with the new versions and changelog, preparing the next release. |