Skip to content

Build User Profile module: CRUD, avatar upload, and preferences #353

Description

@devIKargi

Direction:
Implement a User Profile module to manage user data, profile pictures, and preferences. Provide CRUD APIs and validation.

Key responsibilities:

  • Endpoints: GET /users/:id, PATCH /users/:id, POST /users/:id/avatar, DELETE /users/:id/avatar.
  • Avatar upload handling (multipart), storage (S3 or equivalent), and image size validation.
  • Schema and validation for user fields (displayName, bio, preferences) and privacy settings.
  • Ensure only owners or admins can update or delete profiles.
  • Unit and integration tests and API documentation.

Acceptance criteria:

  • CRUD endpoints implemented and secured (ownership checks).
  • Avatar upload stores file reliably and returns accessible URL; deleting removes storage object.
  • Input validation enforces length and type constraints; invalid inputs return 4xx with helpful messages.
  • Tests for all endpoints and edge cases (large files, invalid formats, unauthorized access).
  • README docs with example requests and required permissions/roles.

Metadata

Metadata

Labels

GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardOfficial Campaign | FWC26Campaign: Official Campaign | FWC26enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions