1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
use owo_colors::{DynColors, OwoColorize};

const OWO: &str = r#"
                                     ██████╗ ██╗    ██╗ ██████╗ 
                                    ██╔═══██╗██║    ██║██╔═══██╗
                                    ██║   ██║██║ █╗ ██║██║   ██║
                                    ██║   ██║██║███╗██║██║   ██║
                                    ╚██████╔╝╚███╔███╔╝╚██████╔╝
                                     ╚═════╝  ╚══╝╚══╝  ╚═════╝
                                                                      
"#;

const COLORS: &str = r#"
                          .o88b. | .d88b.  |db      | .d88b.  |d8888b. |.d8888. 
                         d8P  Y8 |.8P  Y8. |88      |.8P  Y8. |88  `8D |88'  YP 
                         8P      |88    88 |88      |88    88 |88oobY' |`8bo.   
                         8b      |88    88 |88      |88    88 |88`8b   |  `Y8b. 
                         Y8b  d8 |`8b  d8' |88booo. |`8b  d8' |88 `88. |db   8D 
                          `Y88P' | `Y88P'  |Y88888P | `Y88P'  |88   YD |`8888Y' "#;

fn main() {
    let colors: [DynColors; 6] = [
        "#B80A41", "#4E4BA8", "#6EB122", "#DAAC06", "#00938A", "#E23838",
    ]
    .map(|color| color.parse().unwrap());

    println!("\n\n\n\n\n{}", OWO.fg_rgb::<0x2E, 0x31, 0x92>().bold());

    for line in COLORS.split_inclusive('\n') {
        for (text, color) in line.split('|').zip(colors.iter().copied()) {
            print!("{}", text.color(color).bold());
        }
    }

    println!("\n\n\n\n\n\n");
}