Skip to content

Name the tab glean_code_cli and give it a favicon - #32

Merged
barkz merged 1 commit into
mainfrom
feat/favicon-and-title
Sep 12, 2026
Merged

barkz merged 1 commit into
mainfrom
feat/favicon-and-title

Conversation

@barkz

@barkz barkz commented Sep 12, 2026

Copy link
Copy Markdown
Owner

The tab said "Glean Code" with the browser's blank-page icon, so the site was unidentifiable among open tabs.

Title

The tab now reads glean_code_cli — the command you type, matching the repository — and the header mark gains the same suffix.

The site title is deliberately decoupled from the README's title now: a tab wants the command, while the hidden <h1> keeps the product name "Glean Code" for screen readers and search engines.

Favicon

.github/pages/make_icons.py generates a > prompt and an _ cursor in the wordmark's cyan on its dark plate:

File Purpose
assets/favicon.svg Every current browser; sharp at any size
assets/apple-touch-icon.png 180×180, for an iOS home screen

iOS home-screen icons have to be raster, and Pillow isn't a dependency this repo should take, so the PNG is encoded with zlib and struct: per-pixel coverage from the distance to each stroke, one linear ramp for the edge, then IHDR/IDAT/IEND with crc32. The SVG carries its own rounded corners; the PNG is square because iOS masks its own.

Regenerate either with python3 .github/pages/make_icons.py.

Tests

1,094 → 1,100, covering:

  • the committed SVG and PNG both match the generator, so they can't drift
  • the PNG really is a 180×180 PNG (magic bytes plus IHDR dimensions)
  • the mark covers the pixels it should and leaves the plate alone where it shouldn't

Verified by rendering the icon at 180px and the header at 1100px.

🤖 Generated with Claude Code

The tab said "Glean Code" with the browser's blank-page icon, so the
site was unidentifiable among open tabs. It now reads glean_code_cli —
the command you type, matching the repository — and carries an icon.

The site title is deliberately separate from the README's title now: a
tab wants the command, and the hidden <h1> keeps the product name
"Glean Code" for screen readers and search engines. The header mark
gains the same suffix: glean_code_cli.

The icons are generated by .github/pages/make_icons.py — a ">" prompt
and an "_" cursor in the wordmark's cyan on its dark plate:

  assets/favicon.svg            every current browser, sharp at any size
  assets/apple-touch-icon.png   180x180, for an iOS home screen

iOS home-screen icons have to be raster, and Pillow is not a
dependency this repo is willing to take, so the PNG is encoded with
zlib and struct: coverage per pixel from the distance to each stroke,
one linear ramp for the edge, then IHDR/IDAT/IEND with crc32. The SVG
carries its own rounded corners; the PNG is square because iOS masks
its own.

Tests: 1,094 -> 1,100, including that the committed icons match the
generator, that the PNG really is a 180x180 PNG, and that the mark
covers the pixels it should and leaves the plate alone where it
should.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@barkz
barkz merged commit e1771d6 into main Sep 12, 2026
7 checks passed
@barkz
barkz deleted the feat/favicon-and-title branch September 12, 2026 02:47
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