Small library for generating claude-code like unicde block mascots, and providing animations when they do stuff
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

fix: closed eyes use body color as background

The half block (▄) for closed eyes now sets the ANSI background
color to the body color, so the top half blends in instead of
showing the terminal background.

+8 -4
+1 -1
src/clood.rs
··· 70 70 71 71 let body_block = c.body_color.full_block(); 72 72 let eye_open = c.eye_color.full_block(); 73 - let eye_closed = c.eye_color.half_block(); 73 + let eye_closed = c.eye_color.half_block_on(&c.body_color); 74 74 let space = " "; 75 75 76 76 // ── Eye positions ───────────────────────────────────────────────────
+7 -3
src/color.rs
··· 40 40 format!("\x1b[38;2;{};{};{}m\u{2588}\x1b[0m", self.r, self.g, self.b) 41 41 } 42 42 43 - /// Lower half block `▄` in this color (used for closed eyes). 44 - pub fn half_block(&self) -> String { 45 - format!("\x1b[38;2;{};{};{}m\u{2584}\x1b[0m", self.r, self.g, self.b) 43 + /// Lower half block `▄` in this color with a background color filling the top half. 44 + /// Used for closed eyes so the upper half blends into the body. 45 + pub fn half_block_on(&self, bg: &Color) -> String { 46 + format!( 47 + "\x1b[38;2;{};{};{}m\x1b[48;2;{};{};{}m\u{2584}\x1b[0m", 48 + self.r, self.g, self.b, bg.r, bg.g, bg.b 49 + ) 46 50 } 47 51 }