Skip to content

Add cache-tax brand cards, icons, and README banner - #64

Merged
karanb192 merged 3 commits into
mainfrom
cache-tax-brand
Sep 16, 2026
Merged

karanb192 merged 3 commits into
mainfrom
cache-tax-brand

Conversation

@karanb192

@karanb192 karanb192 commented Sep 16, 2026

Copy link
Copy Markdown
Owner

Summary

  • site/brand/: five PNGs rendered from hand-written SVG by build.mjs (sharp): social card 1280x640, X card 1200x675, icon 512 in ice blue and a warm amber variant for the Mod's keep-warm state, favicon 32. SVG sources beside them, and a short README saying which file is for what. Served by Pages under /brand/ on merge, since the deploy workflow triggers on site/**.
  • plugins/cache-tax/README.md: the social card as a banner under the title, relative path into site/brand/.
  • package.json declares sharp ^0.35.4 under devDependencies, with a package-lock.json, and a build:brand script, so npm install && npm run build:brand reproduces the PNGs from any directory in a fresh clone. build.mjs writes its outputs next to itself, not into the working directory. build.mjs trims line-end whitespace before writing each SVG, so the sources pass git diff --check.
  • Palette and type are the site's own variables (void, panel, text, block red, amber) plus an ice blue set for the cube. No emoji in the SVG, so the render does not depend on an emoji font.

Test plan

  • git diff --check main clean; regenerated PNGs byte-identical to the previous commit; npm test 1,928 passing
  • Each PNG opened and checked at full size: tagline fits on two lines, chips inside the frame, footer inside the frame on both card sizes, cube legible at 32 px
  • After merge, https://hooks.karanbansal.in/brand/cache-tax-social-1280x640.png resolves and the plugin README shows the banner

@karanb192

Copy link
Copy Markdown
Owner Author

Two small fixes before this lands:

  1. site/brand/build.mjs imports sharp, but package.json does not declare it. In a fresh clone, node site/brand/build.mjs fails with ERR_MODULE_NOT_FOUND. Please add it as a development dependency so the checked-in PNGs can be reproduced.

  2. git diff --check main...HEAD reports trailing whitespace in all five generated SVGs. Please regenerate or clean the sources.

The assets themselves look good, the README banner path is correct, and npm test passes (1,928 tests).

Small metadata nit: the title is 74 characters. Add cache-tax brand cards, icons, and README banner is tighter.

…generated SVGs

build.mjs now trims line-end whitespace before writing each SVG, so the
five checked-in sources pass git diff --check. package.json declares
sharp ^0.35.4 under devDependencies with a lockfile, so a fresh clone can
regenerate the PNGs with node site/brand/build.mjs. PNG output is
byte-identical to the previous commit.
@karanb192 karanb192 changed the title cache-tax brand files: cube mark, social and X cards, icons, README banner Add cache-tax brand cards, icons, and README banner Sep 16, 2026
@karanb192

Copy link
Copy Markdown
Owner Author

One remaining reproducibility issue. The PR body says npm install && node site/brand/build.mjs reproduces the assets from a fresh clone. Running that command from the repository root writes the ten SVG and PNG files into the repository root, not site/brand/, because build.mjs uses CWD-relative output paths.

Please resolve outputs relative to build.mjs itself, then add a root-level command such as npm run build:brand. That gives the repo one safe, documented regeneration path.

build.mjs resolved its output paths against the working directory, so
running it from the repository root scattered the ten files into the
root. Outputs now resolve against the script's own directory, and
package.json gains a build:brand script so the documented regeneration
path is npm install && npm run build:brand from anywhere in the clone.
PNG output is byte-identical.
@karanb192
karanb192 merged commit a7122bc into main Sep 16, 2026
3 checks passed
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