4 releases (2 breaking)

0.3.0 Apr 3, 2023
0.2.0 Jun 18, 2022
0.1.3 Dec 13, 2021
0.1.2 Nov 6, 2021

#1543 in Parser implementations

Download history 271/week @ 2024-06-18 264/week @ 2024-06-25 223/week @ 2024-07-02 217/week @ 2024-07-09 224/week @ 2024-07-16 240/week @ 2024-07-23 216/week @ 2024-07-30 195/week @ 2024-08-06 255/week @ 2024-08-13 192/week @ 2024-08-20 231/week @ 2024-08-27 207/week @ 2024-09-03 922/week @ 2024-09-10 251/week @ 2024-09-17 254/week @ 2024-09-24 203/week @ 2024-10-01

1,659 downloads per month
Used in 2 crates

MIT license

16KB
311 lines

Color -> TUI

build build

Parse HEX colors to ratatui's Rgb colors.

Example

  • #C3F111 -> Color::Rgb(195,241,17)
  • #CFB -> Color::Rgb(204,255,187)
  • 142 -> Color::Indexed(142)

Usage

#[derive(Serialize, Deserialize, PartialEq)]
sruct ColorStruct {
    #[serde(with = "color_to_tui"]
    color: ratatui::style::Color,
    #[serde(with = "color_to_tui::optional"]
    optional_color: Option<ratatui::style::Color>,
}

let color_text =  r###"{ "color" : "#12FC1C", "optional_color" : "123" }"###
let t: ColorStruct = serde_json::from_str::<ColorStruct>(color_text).unwrap();

let c = ColorStruct {
    color: Color::Rgb(18, 252, 28),
    optional_color: Option<Color::Indexed(123)>,
};

assert_eq!(t, c);

Dependencies

~6.5MB
~109K SLoC