Dheepak Krishnamurthy b6356aa7a5 feat: Add cd.yml
2024-01-05 15:12:12 -05:00
2024-01-05 15:12:12 -05:00
2024-01-05 14:51:01 -05:00
2024-01-05 14:51:01 -05:00
2024-01-05 14:34:40 -05:00
2024-01-05 14:34:40 -05:00
2024-01-05 14:34:40 -05:00
2024-01-05 15:02:02 -05:00

Ratatui Macros

ratatui_macros is a Rust crate that provides easy-to-use macros for simplifying boilerplate associated with creating UI using ratatui.

Features

  • Constraint-based Layouts: Easily define layout constraints such as fixed, percentage, minimum, and maximum sizes, as well as ratios.
  • Directional Layouts: Specify layouts as either horizontal or vertical with simple macro commands.

Getting Started

To use ratatui_macros in your Rust project, add it as a dependency in your Cargo.toml:

[dependencies]
ratatui_macros = "0.1.0"

Then, import the macros in your Rust file:

use ratatui_macros::{constraints, layout, vertical, horizontal};

Use the constraints! macro to define layout constraints:

constraints!([==50, ==30%, >=3, <=1, ==1/2]);
// is equivalent to
[
    ratatui::prelude::Constraint::Length(50)),
    ratatui::prelude::Constraint::Percentage(30)),
    ratatui::prelude::Constraint::Min(3)),
    ratatui::prelude::Constraint::Max(1)),
    ratatui::prelude::Constraint::Ratio(1, 2)),
]
constraints!([==1/4; 4]);
// is equivalent to
[
    ratatui::prelude::Constraint::Ratio(1, 4)),
    ratatui::prelude::Constraint::Ratio(1, 4)),
    ratatui::prelude::Constraint::Ratio(1, 4)),
    ratatui::prelude::Constraint::Ratio(1, 4)),
]

Create vertical and horizontal layouts using the vertical! and horizontal! macros:

let vertical_layout = vertical!([==50, ==30%]);
let horizontal_layout = horizontal!([==1/3, >=100, <=4]);

Contributing

Contributions to ratatui-macros are welcome! Whether it's submitting a bug report, a feature request, or a pull request, all forms of contributions are valued and appreciated.

Description
A Rust crate for cooking up terminal user interfaces (TUIs) 👨‍🍳🐀 https://ratatui.rs
Readme MIT 158 MiB
Languages
Rust 100%