From c7785cd49121f931d0877381fbc8fbc22278f8de Mon Sep 17 00:00:00 2001 From: Matt Bishop Date: Fri, 20 Feb 2026 02:06:45 -0500 Subject: [PATCH] Add startup art to seeder utility (#7045) --- util/SeederUtility/Program.cs | 79 +++++++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) diff --git a/util/SeederUtility/Program.cs b/util/SeederUtility/Program.cs index 74f3f57387..cba08c2191 100644 --- a/util/SeederUtility/Program.cs +++ b/util/SeederUtility/Program.cs @@ -7,10 +7,89 @@ public class Program { private static int Main(string[] args) { + PrintBanner(); + return new AppRunner() .Run(args); } + private static void PrintBanner() + { + var brightGreen = "\x1b[92m"; + var green = "\x1b[32m"; + var brown = "\x1b[38;2;128;60;30m"; + var cyan = "\x1b[36m"; + var bold = "\x1b[1m"; + var reset = "\x1b[0m"; + + // Art sections: leaves (bright green), stem (green), seed (brown) + (string Color, string Art)[] sections = + [ + (brightGreen, """ + ........... + ..::------==:. + ..-----=====+-. + ..----======+=-. + .--==+=======-. + .-===========... + .------:::... ..=+=======-... + .-=====-----:. .:=:......... + .-+=======----...:=.. + .-=======+==--..=:.... + ..===========:=-..... + .:========+=+:.. + ....:----:-=:.. + """), + (green, """ + ..:=:. + .+: + .=-.. + .-=..... + .:=:.... + ..=:. + --. + """), + (brown, """ + ...-======:..:-...=#####*-.. + ..:====--=======-=+##*******###-. + .==------=======**************###: + .==----=======+***************#####. + .:+========++*****************######- + ..##************************########. + :*###*****************###########:. + ..-#########***################=.. + .:*######################*-.. + ..-=+*###########*=-..... + ................. + """), + ]; + + var allLines = sections + .SelectMany(s => s.Art.Split('\n')) + .Where(l => !string.IsNullOrWhiteSpace(l)); + var minIndent = allLines.Min(l => l.Length - l.TrimStart().Length); + + Console.WriteLine(); + foreach (var (color, art) in sections) + { + foreach (var line in art.Split('\n')) + { + if (string.IsNullOrWhiteSpace(line)) + { + continue; + } + + Console.WriteLine($"{color}{line[minIndent..]}{reset}"); + } + } + + Console.WriteLine(); + Console.WriteLine($" {bold}{cyan}╔══════════════════════════════╗{reset}"); + Console.WriteLine($" {bold}{cyan}║ SEEDER UTILITY ║{reset}"); + Console.WriteLine($" {bold}{cyan}╚══════════════════════════════╝{reset}"); + Console.WriteLine(); + } + [Subcommand] public OrganizationCommand Organization { get; set; } = null!;