Finish the pixelcat rebrand everywhere it was still visible - #26
Merged
Conversation
Four parallel audits over packaging, docs, runtime source and the site. The site and the app's own UI turned out to be already clean; what was left was the places a text search for the new name could never reach, plus the docs nobody re-read after 0.3.0. The hero banner and the social card still said PIXELCAT in actual pixels. Both wordmarks are drawn by generators into committed art, so the rename had no way to touch them, and hero-banner.gif sits at the top of the README. Both generators now render PIXELPETS and the assets are regenerated. Their taglines went species-neutral at the same time, since the app has been a cat or a dog since 0.3.0: the banner matches the site's "a cat or a dog that lives on your desktop", the card reads "a pet that lives on your desktop" because that font is a minimal subset with no G in it. The agent integrations called the app pixelcat in every README title, in the setup prose and in the /ABSOLUTE/PATH/TO/pixelcat checkout placeholders, which is what anyone wiring up a Claude Code, Codex, Cursor, Kiro or Antigravity hook reads first. The placeholders moved in lockstep with the substitution in install-hook.js that fills them in; the existing test covers that pairing. Also: a fresh install made a shortcut called "pixelcat", the calendar worker introduced itself to other people's servers as pixelcat-cal, the README documented build outputs under names electron-builder stopped producing when productName changed, and the standalone Lobby Jam page kept the old name. Left alone on purpose, all of it pinned by tests/bridge-paths.test.js so the next sweep has to read the reasoning first: the appId, the %TEMP%/pixelcat-* bridge paths that installed hooks already write to, the %APPDATA%/pixelcat directory the migration exists to find, the PixelcatPreview global, and the site's pixelcat.coat localStorage key. The pixelcat-jet.vercel.app URLs stay correct until the Vercel project itself is renamed.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Four parallel audits over packaging, docs, runtime source and the site. Two of
those came back clean, which was worth knowing: the site and the app's own UI
were already fully rebranded. What was left was the places a text search for
the new name could never reach, plus the docs nobody re-read after 0.3.0.
The wordmarks were baked into pixels
hero-banner.gifsits at the top of the README and still said PIXELCAT -not in markup, but rendered glyph by glyph by
scripts/make-demo-gif.jsintocommitted art. Same for
social-card.png, which is the repo's social preview.No amount of grepping for "pixelcat" in HTML would have found them, and changing
the generator alone would have been a fake fix, so the assets are regenerated
here too.
Their taglines went species-neutral at the same time, since the app has been a
cat or a dog since 0.3.0:
PIXELCAT/ "A CAT THAT LIVES ON YOUR DESKTOP"PIXELPETS/ "A CAT OR A DOG THAT LIVES ON YOUR DESKTOP"PIXELCAT/ "A CAT THAT LIVES ON YOUR DESKTOP"PIXELPETS/ "A PET THAT LIVES ON YOUR DESKTOP"The card says "a pet" rather than matching the banner because that generator's
FONTis a minimal subset with noGin it, so "DOG" is literally unspellablethere. Checked before writing, not after.
The integration docs
Every agent-hook README title (
# Claude Code → pixelcat), the setup prose, andthe
/ABSOLUTE/PATH/TO/pixelcatcheckout placeholders. That is the first thinganyone wiring up a Claude Code, Codex, Cursor, Kiro or Antigravity hook reads.
41 occurrences across 10 files.
The placeholders had to move in lockstep with the
.split()calls inscripts/install-hook.jsthat fill them in, or the substitution silentlyno-ops. The existing test
install-hook prints a path-filled config for every agentcovers exactly that pairing, and it passes.Smaller ones
nsis.shortcutName- a fresh install created a shortcut called "pixelcat"src/cal-worker.js- introduced itself to other people's calendar servers aspixelcat-calREADME.md- documented build outputs aspixelcat.exe/pixelcat Setup <version>.exe, names electron-builder stopped producing whenproductNamebecamepixelpets. Those lines were wrong, not just staleextras/lobby-jam.html- old name in the title and headerDeliberately not touched
All pinned by
tests/bridge-paths.test.js, whose stated purpose is to make thenext sweep read the reasoning first:
appId/AppUserModelId- doubles as the autostartRunkey and the NSIS upgrade key%TEMP%/pixelcat-agent.stateand%TEMP%/pixelcat-notify.jsonl- installed hooks already write to these exact paths%APPDATA%/pixelcatinsrc/datadir.js- the migration exists to find that directoryPixelcatPreview- pinned across src/ and site/ bysite-sync.test.jspixelcat.coat/pixelcat.bondlocalStorage keys - renaming resets returning visitorspixelcat-jet.vercel.app- still the live URL until the Vercel project is renamedAlso skipped as zero-impact: source comments, and the orphaned
assets/pixelcat.icoand
assets/pixelcat-demo.*artifacts, which the audit found have no referreranywhere in the repo.
Testing
npm test127 pass,npm run lintcleanFONTbefore changing any string, so no character silently falls back to a space