Skip to content

Unify the product tagline and put it on the playback splash - #39

Merged
austin-smith merged 4 commits into
mainfrom
product-tagline
Aug 4, 2026
Merged

austin-smith merged 4 commits into
mainfrom
product-tagline

Conversation

@austin-smith

@austin-smith austin-smith commented Aug 4, 2026

Copy link
Copy Markdown
Owner

Summary

  • derive the CLI banner, --help description, npm description, and Homebrew desc from one constant in src/branding.ts
  • show the tagline beneath the wordmark on the empty-playback splash
  • move the wordmark art from the block font to tiny, and rename the lockup mode to match
  • render the TUI in spo·tui·fy in the logo's cream, sampled from docs/assets/spotuify-logo.png

Why

The root command described itself two ways depending on whether stdout was a TTY, and the Homebrew formula carried a third variant. The tagline also never appeared in the app itself.

The tiny art is two rows instead of six and needs 29 columns instead of 70, so brand art now survives on terminals that previously fell back to plain text, including the startup error screen when a diagnostic wraps. The tagline is dropped whole whenever its rows would move the wordmark or overflow the splash region.

Validation

  • bun run typecheck
  • bun test — 1,040 passed
  • --version output unchanged; scripts/verify-npm.ts and scripts/verify-release.ts exact-match it

the root command described itself two ways depending on whether stdout was a
tty: commander printed "Spotify in your terminal" while the clack banner
printed "spotify in ur terminal". the homebrew formula carried a third variant.

define the tagline once in the cli presenter and derive the npm description and
the formula desc from it. the desc is deliberately lowercase; brew audit warns
on a lowercase-initial desc, but this is a personal tap and the tagline is the
brand.

drop the desc assertion from the tap test, which restated the constant inside a
test about platform binary selection.
the empty-playback splash has the most dwell time, so it carries the tagline
under the wordmark. the existing message row is untouched — every state of it is
status or a keybinding hint. the tagline costs two rows, its own plus a blank
one, and is dropped whole whenever those rows would move the wordmark or
overflow the region.

swap the wordmark art from the block font to tiny. six rows dominated the
screen, and needing 70 columns meant anything narrower fell all the way back to
plain text; two rows and 29 columns keep real brand art down to ~33 columns.
rename the lockup mode from block to art to match.

split the art into three segments so the tui in spo·tui·fy carries the mark's
cream. the segments plus their gaps total exactly the width one call produced.

move the tagline constant to src/branding.ts now that the tui needs it too;
importing the cli presenter from the ui would drag clack into the tui.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 872b725217

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/ui/Brand.tsx
the mode check is pure layout math, so a re-split of the segments or a font swap
could keep it green while the lockup box clipped the right edge of the art. the
29-column breakpoint is derived from gaps the font inserts internally, which
nothing was verifying against a real render.
@austin-smith

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🚀

Reviewed commit: c118f92ead

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@austin-smith
austin-smith merged commit 753a617 into main Aug 4, 2026
2 checks passed
@austin-smith
austin-smith deleted the product-tagline branch August 4, 2026 08:39
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