impact-space / impact-space/app
Implement "Challenges" for Organizations and Organization Members
- Dominant language
- C#
- Stars
- 15
- Forks
- 2
- PR merge metrics
- No merged PRs in 30d
Description
**Description:**
In Milestone 1, we want to develop the "Challenges" feature to represent issues that organizations address and issues that organization members actively work towards resolving. This will help organizations and members showcase their focus areas and create a better understanding of their goals and values.
**Requirements:**
- [x] 1. Create a Challenge model with the following attributes:
- Id (Guid)
- Name (String) (required, max length: 54)
- [x] 2. Create a many-to-many relationship between Challenge and Organization using an intermediary table
OrganizationChallenge with the following attributes:
- OrganizationId (Guid)
- Organization (Organization)
- ChallengeId (Guid)
- Challenge (Challenge)
- [x] 3. Create a many-to-many relationship between Challenge and OrganizationMember using an intermediary table OrganizationMemberChallenge with the following attributes:
- OrganizationMemberId (Guid)
- OrganizationMember (OrganizationMember)
- ChallengeId (Guid)
- Challenge (Challenge)
- [x] 4. Develop Host Challenge Management
- [ ] 5. Develop a UI for organizations to:
- Add, edit, and remove challenges associated with their organization
- View challenges associated with their organization
- [ ] 6. Develop a UI for organization members to:
- Add, edit, and remove challenges associated with their profile
- View challenges associated with their profile
- [ ] 7. Implement backend logic to handle CRUD operations for challenges.
**Acceptance Criteria:**
- Challenge model is created with the required attributes.
- Many-to-many relationships are established between Challenge and Organization, and Challenge and OrganizationMember.
- Organizations can add, edit, and remove challenges associated with their organization.
- Organization members can add, edit, and remove challenges associated with their profile.
- Backend logic handles CRUD operations for challenges.
**Notes:**
Please ensure that the UI design is consistent with the overall application design.
Make sure to properly handle user permissions when allowing access to challenges.
Don't forget to write tests to verify the implemented functionality.
Contributor guide
Assessment
This issue has not been assessed yet.