Skip to content

feat(brand): redraw the egret mark from circles and straight lines - #841

Merged
viethqb merged 2 commits into
mainfrom
feat/geometric-egret-mark
Nov 10, 2026
Merged

viethqb merged 2 commits into
mainfrom
feat/geometric-egret-mark

Conversation

@viethqb

@viethqb viethqb commented Nov 7, 2026 •

Copy link
Copy Markdown
Member

Summary

Replaces the hand-drawn egret with a mark built only from basic geometry, in the shape-builder style (circles + straight lines, then union / intersect / subtract). All assets are generated by one script.

Part Construction
S-neck two half-rings (circle − concentric circle), centres on one vertical axis, cut on that axis so the bands meet flush
Head one circle
Beak triangle whose sides are tangent to a small root circle
Body intersection of two circles (lens)
Wing crescent (circle − circle) cut out of the body
Legs two rectangles

The shipped SVGs are flat <path>s using only M / L / A / Z: no masks, no clip-paths, no Béziers. favicon.svg is 817 bytes.

Changes

  • scripts/brand/egret_mark.py: the construction, plus writers for every asset. PNG/ICO go through headless Chrome, then sips or Pillow. --docs PATH refreshes the docs site copies.
  • frontend/public/favicon.svg, favicon-32.png, apple-touch-icon.png, icon-192.png, icon-512.png: full mark.
  • frontend/public/favicon-16.png and the 16 px frame of favicon.ico: legs and wing cut dropped, because they vanish below 32 px. The ICO holds 16 / 32 / 48.
  • egret-wordmark-{light,dark}.svg in frontend/public and .github/assets: new bird, letters unchanged.
  • .github/assets/architecture-{light,dark}.svg: embedded tile swapped.
  • .github/assets/egret-mark-construction.svg: construction circles, for reference.

Test plan

  • python3 scripts/brand/egret_mark.py reproduces every committed asset byte for byte (git status clean after a run).
  • Rendered every asset in headless Chrome: wordmark on light and dark, icons at 16 / 32 / 180 / 192, transparent tile corners, architecture diagram.
  • Checked the 16 and 32 px rasters magnified.
  • No test references logo contents (Header.tsx only loads /favicon.svg).

Documentation

egret-data/docs#68 swaps the docs site's favicon, navbar logo, wordmarks and architecture diagrams. Those are byte-identical copies made with --docs. App screenshots under static/img/platform/ still show the old 32 px header mark and are not refreshed in this change.

Checklist

🤖 Generated with Claude Code

viethqb and others added 2 commits November 7, 2026 22:09
The new mark is built only from basic geometry, shape-builder style:
two half-rings on one axis form the S-neck, a circle and a tangent
triangle form the head and beak, two intersecting circles form the
body, a crescent cuts the wing, and two rectangles are the legs.
Every outline in the shipped SVGs is an arc (A) or a line (L).

- favicon.svg, favicon-32, apple-touch-icon, icon-192/512: full mark
- favicon-16 and the 16px ICO frame: legs and wing cut dropped, as
  they vanish below 32px
- wordmarks (frontend/public and .github/assets): new bird, same letters
- architecture diagrams: embedded tile swapped
- egret-mark-construction.svg: the construction circles, for reference

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
scripts/brand/egret_mark.py holds the geometric construction and writes
every logo asset from it: favicon.svg, wordmarks, architecture diagram
tiles, the construction sheet, and (via headless Chrome) the PNG/ICO
icons. Re-running it reproduces the committed assets byte for byte.
--docs copies the assets into an egret-data/docs checkout.

The construction sheet is now drawn from the flattened paths instead of
masks.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@viethqb
viethqb merged commit 1418484 into main Nov 10, 2026
9 checks passed
@viethqb
viethqb deleted the feat/geometric-egret-mark branch November 10, 2026 09:43
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