US: Group Creation and Management #28

Open
opened 2026-06-20 19:01:37 +00:00 by reid · 0 comments
Owner

User Story: As a user, I want to create and manage reading groups so that I can read books together with friends.

Acceptance Criteria:

  • Given I am an authenticated user, When I navigate to the groups section and tap "Create Group", Then I should be able to enter a group name and description, and the group should be created with me as the admin.
  • Given I am a group admin, When I view the group settings, Then I should see options to invite members, remove members, and transfer admin role.
  • Given I am a group admin, When I generate an invite link, Then I should receive a shareable URL that allows other users to request to join the group.
  • Given I have an invite link, When I open it while authenticated, Then I should see a confirmation to join the group, and my request should appear for admin approval if the group requires approval.
  • Given I am a group member (non-admin), When I view the group, Then I should see the group name, description, member list, and current book being read.
  • Given I am a group admin, When I remove a member from the group, Then the member should be notified and removed from the group immediately.
  • Given I am a group member, When I choose to leave the group, Then I should be removed from the member list, and if I was the admin, the group should either be dissolved or prompt to assign a new admin.
  • Given I am a group admin, When I transfer admin role to another member, Then the selected member should become the new admin and I should become a regular member.

Subtasks (checklist):

  • Create Group model with name, description, admin_user_id
  • Create GroupMember model with roles (admin, member)
  • Implement group CRUD API endpoints
  • Implement invite link generation and validation
  • Implement join request flow (direct/approval)
  • Implement member removal by admin
  • Implement leave group functionality
  • Implement admin transfer functionality
  • Create frontend group management UI
  • Add mobile support for group features
User Story: As a user, I want to create and manage reading groups so that I can read books together with friends. Acceptance Criteria: * **Given** I am an authenticated user, **When** I navigate to the groups section and tap "Create Group", **Then** I should be able to enter a group name and description, and the group should be created with me as the admin. * **Given** I am a group admin, **When** I view the group settings, **Then** I should see options to invite members, remove members, and transfer admin role. * **Given** I am a group admin, **When** I generate an invite link, **Then** I should receive a shareable URL that allows other users to request to join the group. * **Given** I have an invite link, **When** I open it while authenticated, **Then** I should see a confirmation to join the group, and my request should appear for admin approval if the group requires approval. * **Given** I am a group member (non-admin), **When** I view the group, **Then** I should see the group name, description, member list, and current book being read. * **Given** I am a group admin, **When** I remove a member from the group, **Then** the member should be notified and removed from the group immediately. * **Given** I am a group member, **When** I choose to leave the group, **Then** I should be removed from the member list, and if I was the admin, the group should either be dissolved or prompt to assign a new admin. * **Given** I am a group admin, **When** I transfer admin role to another member, **Then** the selected member should become the new admin and I should become a regular member. Subtasks (checklist): - [ ] Create Group model with name, description, admin_user_id - [ ] Create GroupMember model with roles (admin, member) - [ ] Implement group CRUD API endpoints - [ ] Implement invite link generation and validation - [ ] Implement join request flow (direct/approval) - [ ] Implement member removal by admin - [ ] Implement leave group functionality - [ ] Implement admin transfer functionality - [ ] Create frontend group management UI - [ ] Add mobile support for group features
This repo is archived. You cannot comment on issues.
No labels
1 Participants
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: HermesFactory/cloud-reader#28