1use colored::Colorize;
2
3pub fn print_success(msg: &str) {
5 println!("{} {msg}", "✓".green().bold());
6}
7
8pub fn print_error(msg: &str) {
10 eprintln!("{} {msg}", "error:".red().bold());
11}
12
13pub fn print_warning(msg: &str) {
15 eprintln!("{} {msg}", "warning:".yellow().bold());
16}
17
18pub fn print_not_implemented(command: &str) {
20 print_warning(&format!("'{command}' is not yet implemented"));
21}
22
23pub fn print_header(title: &str) {
25 println!("\n{}", title.bold().underline());
26}
27
28pub fn print_project_entry(name: &str, path: &str, tags: &[String]) {
30 let tag_str = if tags.is_empty() {
31 String::new()
32 } else {
33 format!(" [{}]", tags.join(", ").dimmed())
34 };
35 println!(" {} {}{tag_str}", name.cyan(), path.dimmed());
36}