Files
app/stories/end-user/EU-008-profile-avatar.md
T
2025-11-30 15:01:28 +00:00

1010 B

Upload Profile Avatar

ID: EU-008 Priority: Low Status: Planned

User Story

As an end user, I want to upload a profile picture so that my identity is visually recognizable across applications that use this identity provider.

Acceptance Criteria

  • User can upload an image from their device
  • Supported formats: JPEG, PNG, GIF
  • Maximum file size: 5MB
  • Image is automatically resized/cropped to standard dimensions
  • User can crop/adjust image before saving
  • Avatar is served via CDN for fast loading
  • Default avatar (initials or Gravatar) when no upload
  • Avatar is available to connected applications via API

Technical Notes

  • User model needs avatar URL field
  • Consider using cloud storage (S3, Cloudflare R2) for images
  • Implement image processing for resize/crop (sharp library)
  • Gravatar integration as fallback using email hash
  • Expose avatar in JWT claims or user info endpoint
  • New feature - no existing infrastructure