saade/facehash
Generate deterministic SVG avatar faces from any string in Laravel. Pure PHP output, no GD, Imagick, or external services needed. Consistent, unique avatars with sizes, shapes, colors, and variants.
route.middleware now []), removing an avoidable tracking/cookie-consent concern for publicly cacheable avatar endpoints.colors([]) now safely falls back to configured or shipped palettes instead of crashing. FaceSvgData::get() exposes an eyes key, enabling more targeted theming or accessibility work.config/facehash.php files need the middleware default updated to avoid unwanted cookies.['web'] to [], and blink() eye classes may differ.For Executives: “This package generates consistent, privacy-friendly user avatars instantly—without external APIs, uploaded files, or cookie-setting routes. The new release fixes international names, so ‘Zoë’ or ‘日本語’ now render the same avatar as our JavaScript tooling, and the avatar route is safer to cache publicly. It now has automated tests across supported PHP/Laravel versions and public docs, reducing maintenance risk. Upfront cost is near zero, and it scales without new infrastructure. The main upgrade caveat is that non-ASCII avatars will change, so we should version or purge cached images during rollout.”
For Engineering: *“Facehash v1.3.0 is a meaningful reliability and privacy update:
route.middleware defaults to []; if you published config/facehash.php, update your copy from ['web'] to [] unless you intentionally rely on sessions there.colors([]) falls back safely; blink eyes animate together; FaceSvgData::get() now exposes an eyes key.blink() is byte-for-byte unchanged; with blink(), eye classes changed on some faces.
Recommend spiking profile pages and notification avatars, then validating cache invalidation and i18n behavior before rollout.”*How can I help you explore Laravel packages today?