summer 0.5.1

Rust microservice framework like spring boot in java
Documentation
use nu_ansi_term::Color;

use crate::{app::AppBuilder, config::env::Env};

const BANNER: &str = r"
            ⌡
         __@▓▄                             ___
   ___,p@▒▒░▓▓L                            ▀▀▀ª    ▄▄▄▄▄
  ⌡▒▒▒▓▒▒░▒▓▓▓▓  ▄█████  ████████_  ██████ ███ª █████████,  ▄████████
_▄▒▓▒▒▓▒▒░▓▓▓▓▓  ▓██▄_   ███~ ~███, ███▀ª~ ███─ ███▓~~▓██N ███▀~~▓██▀
▄▓▒▓▒▒▓▒▓▓▓▓▓▓█   ~▀███  ███_ _███'▐███    ███  ███ª  ▓██N ███▄ _███G
▓▓▒▓▒▒▓▓▓▓▓▓▓▀  ▀█████▀  ███▀████ª ▐███    ███  ███   ▓██N ~▀███▀███ª
▓▓▓▓▓▓▓▓▓▓▀ª`            ███                                ▄▄▄▄▄███
 ▓▀▀▀ⁿª^                 ▀▀▀                                ▀▀▀▀▀▀▀~
";

pub(crate) fn print_banner(app: &AppBuilder) {
    println!("{BANNER}");
    println!(
        "     summer: {}",
        Color::Green.paint(env!("CARGO_PKG_VERSION"))
    );
    let env = match app.env {
        Env::Dev => Color::LightYellow.paint("Dev"),
        Env::Test => Color::LightBlue.paint("Test"),
        Env::Prod => Color::Green.paint("Prod"),
    };
    println!("environment: {env}");
    if cfg!(debug_assertions) {
        println!("compilation: {}", Color::LightRed.paint("Debug"));
    } else {
        println!("compilation: {}", Color::Green.paint("Release"));
    }
}