Skip to content
Apothem
Brand

Asset Rebuild Recipe

Regenerate all raster brand assets from the master SVG sources with resvg and Pillow.

The asset rebuild recipe regenerates every raster asset from the master SVGs. It is the authoritative update path for brand iterations.

When to run

Run the rebuild recipe when:

  • The master SVG (assets/src/logo.svg or assets/src/logo-dark.svg) changes.
  • The compact favicon master (assets/favicon.svg) changes.
  • A social-card master (assets/src/og-banner.svg or assets/src/twitter-card.svg) changes.
  • A new raster size is needed.
  • You want to verify that the committed assets still match the SVG source.

Script

ScriptPlatformPath
rebuild-assets-resvg.pyAny host with Python + resvgscripts/dev/rebuild-assets-resvg.py

Requirements

The generator rasterizes each SVG with resvg and composes the raster sets with Pillow:

  • Pillow: pip install pillow.
  • resvg: download the release binary for your platform from the resvg releasesresvg-win64.zip on Windows, resvg-linux-x86_64.tar.gz on Linux, or resvg-macos.zip on macOS — extract it onto your PATH, or point the script at it with --resvg <path>.

Usage

Regenerate every raster asset:

python scripts/dev/rebuild-assets-resvg.py

Pass --check-only to verify the toolchain is available without regenerating any assets:

python scripts/dev/rebuild-assets-resvg.py --check-only

If resvg is not on your PATH, point the script at the binary:

python scripts/dev/rebuild-assets-resvg.py --resvg /path/to/resvg

Verification

A successful run regenerates the light and dark mark rasters, favicon PNG/ICO set, Apple touch icons, OG/Twitter images, and mirrors the web-served subset — including the hero logo sources the site references — into site/public/. After generation, run the site build and inspect the Home page, browser tab favicon, and social-card PNGs before publishing.

On this page