github mattogodoy/nametag v0.31.0

latest release: v0.31.1
9 hours ago

Release Summary

  • Added support for user photos, now visible in various areas including reminders and search results.
  • Improved photo upload and cropping experience in the user form.
  • Fixed issues with photo serving to ensure fresh updates and prevent caching problems.
  • Enhanced the design of person-related features to include photos consistently across the app.

0.31.0 (2026-03-05)

Features

  • add person photo upload, crop, and display (0488109)
  • add photo feature translations for all locales (370beb7)
  • add photo upload and delete API endpoints (8578d6c)
  • add PhotoCropModal with react-easy-crop integration (8b90edf)
  • add processPhoto utility with sharp resize/JPEG/EXIF-strip (ec3bc8f)
  • add sharp and react-easy-crop dependencies for photo upload (d6e92ce)
  • add user photo support (upload, navbar, graph, relationships) (341b292)
  • embed person photos in reminder emails as inline CID attachments (7b5d825)
  • increase max crop zoom from 3x to 5x (6585fb9)
  • integrate photo upload and crop into PersonForm (f9be2fe)
  • replace PersonPhoto with flexible PersonAvatar component (7dfa914)
  • show person photos in dashboard upcoming events (1cb9f81)
  • show person photos in group member pills (11baa8b)
  • show person photos in navbar search results (0bebd71)
  • show person photos in network graph nodes with group-colored borders (80dc1e2)
  • show person photos in people list table (7205680)
  • show person photos in relationship list (c41d36c)

Bug Fixes

  • add blob: to CSP img-src for photo crop preview (9922210)
  • defer photo upload/delete to form save instead of immediate execution (9a9f81b)
  • remove inline photo attachments from reminder emails (5a8bbd0)
  • set maxZoom=5 on Cropper component to match slider range (0be7969)
  • strip quoted nicknames from initials in PersonAvatar (9e32f67)
  • update UI immediately when removing a photo via X button (9f6c2ee)
  • use 80px avatar on person detail page per design spec (8600af9)
  • use ETag + no-cache for photo serving to prevent stale cache on photo change (39829d3)
  • use no-store for photo serving to guarantee fresh photos after change (a6a42d3)

Don't miss a new nametag release

NewReleases is sending notifications on new releases.