fixed cli mascots and horizontal formatting#20
Conversation
…e fix Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Adds chafa-based ANSI art rendering to the character reveal section of the TUI. Resolves the mascot PNG from public/mascots/ relative to the bundle (works in both repo and npm-installed contexts). Gracefully falls back to text-only layout when chafa is not installed. Install chafa to enable: brew install chafa / sudo apt install chafa Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Convert all 9 character mascot PNGs to ANSI 256-color half-block art at build time using PIL. The resulting ANSI strings are embedded statically in mascots-ansi.ts and bundled into dist/ccrewind-tui.mjs. - scripts/generate-mascot-art.py — regenerates mascots-ansi.ts when mascots change - scripts/mascots-ansi.ts — auto-generated static ANSI art map (~60KB) - renderCharacterReveal() — directly reads from MASCOT_ART, no runtime deps Bundle size: 42KB → 137KB (95KB added for all 9 images) Zero runtime dependencies required. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Regenerated all 9 ANSI mascots at 70×35 (up from 46×22) with auto-detected background transparency — pixels within euclidean distance 30 of the sampled corner colour are treated as transparent, so the mascot renders against the user's own terminal background. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Switched from 256-color palette to 24-bit RGB escape codes (\x1b[38;2;R;G;Bm) — eliminates color banding entirely. Increased resolution to 90×45 (up from 70×35). Bundle: 170KB → 452KB. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Replace per-pixel distance check with a flood fill from all edge pixels. Only pixels connected to the image border are treated as transparent — dark interior pixels (shadows, clothing) are preserved even if they're close to the background colour. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Keeps true-color 24-bit + flood-fill transparency, just smaller. Bundle: 460KB → 210KB. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ropped mascot art - TUI now fills terminal width (COL_WIDTH = process.stdout.columns) - Table rows stacked: name on own line, bar + stats indented below - Bar widths scale dynamically to fill available width - Header/footer/section dividers all match terminal width - One-liner wraps at terminal width - Calendar day cells spaced out for readability - Tool entries have blank line between each for breathing room - Mascot art blank lines trimmed from top and bottom Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
@AbdulAaqib is attempting to deploy a commit to the junaid2005's projects Team on Vercel. A member of the Team first needs to authorize it. |
| @@ -160,111 +160,61 @@ function PreviewCards() { | |||
| } | |||
|
|
|||
| function TabContentNPM({ active }: { active: boolean }) { | |||
There was a problem hiding this comment.
dont rename the file
send a picture of the change pls
There was a problem hiding this comment.
keep name to as it was orginally
There was a problem hiding this comment.
Yeah, i changed it to the original
| @@ -0,0 +1,202 @@ | |||
| #!/usr/bin/env python3 | |||
There was a problem hiding this comment.
rewrite in ts pls
were adding a python dep (okay maybe the user has it) but then on top were adding a pillow dep - not a smooth ux if they dont have it
| @@ -0,0 +1,568 @@ | |||
| const fs = require('fs'); | |||
There was a problem hiding this comment.
rewrite in ts to match ccrewind-tui.ts
| @@ -0,0 +1,95 @@ | |||
| // AUTO-GENERATED by scripts/generate-mascot-art.py — do not edit manually | |||
There was a problem hiding this comment.
can this be done at runtime? is it needed to hardcode into the repo?
|
add pr descriptions pls (or ai generate) or write concisely |
… screen rename - Convert generate-variants.js → generate-variants.ts (ES module imports, fileURLToPath) - Rewrite generate-mascot-art.py → generate-mascot-art.ts using jimp (removes Python/Pillow dep) - Update mascots-ansi.ts header comment to reference .ts script - Add jimp as devDependency - Revert UploadScreenV3.tsx rename back to UploadScreen.tsx, fix page.tsx import Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…pe annotations Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
| "exclude": [ | ||
| "node_modules" | ||
| "node_modules", | ||
| "scripts" |
| @@ -0,0 +1,94 @@ | |||
| // AUTO-GENERATED by scripts/generate-mascot-art.ts — do not edit manually | |||
There was a problem hiding this comment.
i thought this was going to be generated on runtime, doesnt need to be in pr

Summary
ccrewind-tui.tsgenerate-variants.jstogenerate-variants.tswith ES module imports to matchccrewind-tui.tsstyleUploadScreen.tsxwith correct import inpage.tsxscripts/mascots-ansi.ts— pre-generated ANSI art bundled into the CLI at build time