feat: implement community discovery page and components - #719
feat: implement community discovery page and components#719Ikechukwu-Patrick wants to merge 2 commits into
Conversation
Resolves: - BigNathan1#299 (Closes BigNathan1#221) - BigNathan1#298 (Closes BigNathan1#220) - BigNathan1#297 (Closes BigNathan1#219) - BigNathan1#296 (Closes BigNathan1#218)
|
@Ikechukwu-Patrick Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
|
Thanks @Ikechukwu-Patrick. I updated this branch against 1. Either add it ( 2. The import path does not match where the file is. Two files import
3. Two The new 4. Test file placement. None of this is structural — the feature itself reads well, and the discovery page is a good addition. Run |
Closes #296
Closes #297
Closes #298
Closes #299
Summary
This PR implements the community discovery experience, allowing users to browse, search, and navigate available cooperatives on the CoopLumen platform. It establishes the core components (
CommunityListandCommunityCard) alongside the/communitiesrouting, complete with automated test coverage.Changes Proposed
app/communities/page.tsx— community discovery page #299): Createdapp/communities/page.tsxserving as the main discovery hub with MVP mock data generation.CommunityList.tsxwith pagination, search input, and empty state #298): CreatedCommunityList.tsxto handle client-side search filtering, dynamic pagination, and accessible empty states.CommunityCard.tsxnavigate to community detail page on click #297): WrappedCommunityCard.tsxwith an accessible, full-element clickableLinkoverlay to navigate to community details without creating invalid HTML nesting.CommunityCard.tsxwith member count, token count, and join button #296): ExpandedCommunityCard.tsxto displaymember_countandtoken_countmetrics, and integrated a fully styled, state-aware "Join" button.CommunityCard.module.cssstrictly using the existing CSS custom properties (--color-surface,--color-primary, etc.) for seamless light/dark mode support.frontend/src/components/__tests__/communities/CommunityList.test.tsx.CHANGELOG.md.Definition of Done / Acceptance Criteria Checklist
CHANGELOG.mdhas been updated under[Unreleased].