Skip to content

Show a logo banner on the first init of a repository - #6

Merged
jdbadger merged 1 commit into
mainfrom
logo
Sep 20, 2026
Merged

jdbadger merged 1 commit into
mainfrom
logo

Conversation

@jdbadger

Copy link
Copy Markdown
Owner

The first indexter init on an interactive terminal plays a ~1.2 s logo animation on stderr (gradient, a sweeping glint, twinkling sparkles), then leaves a still header with the version. It is skipped for --quiet, reindex, an already-indexed repository, and any stderr that is not a terminal wide and tall enough to hold it; NO_COLOR prints the still header unanimated.

The art is indexter.png box-sampled to quadrant characters by scripts/render_logo.py (just logo) and embedded as a string, so no image dependency is added.

The palette follows the terminal background. The terminal is asked with OSC 11 followed by a DA1 query, and reading stops at the DA1 reply, so a slow reply is never echoed or left in the shell's input. Nothing is read if the user has already typed ahead. COLORFGBG is the fallback, then dark.

The first `indexter init` on an interactive terminal plays a ~1.2 s logo
animation on stderr (gradient, a sweeping glint, twinkling sparkles), then
leaves a still header with the version. It is skipped for --quiet, reindex,
an already-indexed repository, and any stderr that is not a terminal wide
and tall enough to hold it; NO_COLOR prints the still header unanimated.

The art is indexter.png box-sampled to quadrant characters by
scripts/render_logo.py (`just logo`) and embedded as a string, so no image
dependency is added.

The palette follows the terminal background. The terminal is asked with
OSC 11 followed by a DA1 query, and reading stops at the DA1 reply, so a
slow reply is never echoed or left in the shell's input. Nothing is read
if the user has already typed ahead. COLORFGBG is the fallback, then dark.
@jdbadger
jdbadger merged commit c9bdd64 into main Sep 20, 2026
5 checks passed
@jdbadger
jdbadger deleted the logo branch September 20, 2026 00:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant