Skip to content

Commit 60f0900

Browse files
authored
GitHub Repository Showcase App (#44)
* fix: update type for items in Repositories component to ReactElement * Initial PR Review * updates based on PR suggestions * Refactor code structure for improved readability and maintainability
1 parent 3a9ab71 commit 60f0900

14 files changed

Lines changed: 1023 additions & 45 deletions

File tree

.documentation/specs/001-github-repo-showcase/spec.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ required_gates: checklist, analyze, critic
1111

1212
**Feature Branch**: `001-github-repo-showcase`
1313
**Created**: 2026-04-16
14-
**Status**: In Progress
14+
**Status**: Complete
1515
**Input**: User description: "Create a MarkHazleton GitHub Repository app that showcases data from the generated repositories dataset in github-stats-spark, with strong Bootstrap flair and a world-class presentation similar in spirit to the existing Projects and Articles experiences."
1616

1717
## Rationale Summary

.documentation/specs/001-github-repo-showcase/tasks.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -79,14 +79,14 @@ description: "Executable task list for the GitHub Repository Showcase feature"
7979

8080
### Tests for User Story 2
8181

82-
- [ ] T020 [P] [US2] Add integration coverage for search, filter, sort, and zero-state behavior in `tests/integration/repositories/RepositoriesPage.test.tsx`
82+
- [X] T020 [P] [US2] Add integration coverage for search, filter, sort, and zero-state behavior in `tests/integration/repositories/RepositoriesPage.test.tsx`
8383

8484
### Implementation for User Story 2
8585

86-
- [ ] T021 [P] [US2] Create repository discovery helpers for filtering, sorting, and derived filter catalogs in `src/utils/repositoryFilters.ts`
87-
- [ ] T022 [US2] Add searchable and sortable repository view state to `src/components/Repositories.tsx`
88-
- [ ] T023 [US2] Implement filter controls, result counts, and zero-match recovery messaging in `src/components/Repositories.tsx`
89-
- [ ] T024 [US2] Add responsive list management for larger result sets, including paging or grouped presentation, in `src/components/Repositories.tsx`
86+
- [X] T021 [P] [US2] Create repository discovery helpers for filtering, sorting, and derived filter catalogs in `src/utils/repositoryFilters.ts`
87+
- [X] T022 [US2] Add searchable and sortable repository view state to `src/components/Repositories.tsx`
88+
- [X] T023 [US2] Implement filter controls, result counts, and zero-match recovery messaging in `src/components/Repositories.tsx`
89+
- [X] T024 [US2] Add responsive list management for larger result sets, including paging or grouped presentation, in `src/components/Repositories.tsx`
9090

9191
**Checkpoint**: User Stories 1 and 2 both work independently, with discovery controls usable on phone and desktop layouts.
9292

@@ -100,12 +100,12 @@ description: "Executable task list for the GitHub Repository Showcase feature"
100100

101101
### Tests for User Story 3
102102

103-
- [ ] T025 [P] [US3] Add integration coverage for repository CTA links, badges, and featured/fallback distinction in `tests/integration/repositories/RepositoriesPage.test.tsx`
103+
- [X] T025 [P] [US3] Add integration coverage for repository CTA links, badges, and featured/fallback distinction in `tests/integration/repositories/RepositoriesPage.test.tsx`
104104

105105
### Implementation for User Story 3
106106

107-
- [ ] T026 [US3] Enrich repository cards with summary text, activity badges, and status tags in `src/components/Repositories.tsx`
108-
- [ ] T027 [US3] Add outbound GitHub and live-site call-to-action handling with accessible labels in `src/components/Repositories.tsx`
107+
- [X] T026 [US3] Enrich repository cards with summary text, activity badges, and status tags in `src/components/Repositories.tsx`
108+
- [X] T027 [US3] Add outbound GitHub and live-site call-to-action handling with accessible labels in `src/components/Repositories.tsx`
109109

110110
**Checkpoint**: All user stories are independently functional, and repository entries provide clear decision support before outbound navigation.
111111

@@ -115,10 +115,10 @@ description: "Executable task list for the GitHub Repository Showcase feature"
115115

116116
**Purpose**: Finish theme fit, resilience, and full verification across the feature.
117117

118-
- [ ] T029 [P] Refine Bootstrap styling, theme compatibility, and responsive polish for the repository showcase in `src/components/Repositories.tsx` and `src/css/styles.css`
119-
- [ ] T030 [P] Add any missing accessibility, error-state, and retry-affordance assertions to `tests/integration/repositories/RepositoriesPage.test.tsx`
120-
- [ ] T031 Run full quality verification with `npm run lint`, `npm run type-check`, `npm run test:coverage`, and `npm run build`
121-
- [ ] T032 Run the quickstart validation scenarios from `.documentation/specs/001-github-repo-showcase/quickstart.md` and update feature docs if behavior drift is discovered
118+
- [X] T029 [P] Refine Bootstrap styling, theme compatibility, and responsive polish for the repository showcase in `src/components/Repositories.tsx` and `src/css/styles.css`
119+
- [X] T030 [P] Add any missing accessibility, error-state, and retry-affordance assertions to `tests/integration/repositories/RepositoriesPage.test.tsx`
120+
- [X] T031 Run full quality verification with `npm run lint`, `npm run type-check`, `npm run test:coverage`, and `npm run build`
121+
- [X] T032 Run the quickstart validation scenarios from `.documentation/specs/001-github-repo-showcase/quickstart.md` and update feature docs if behavior drift is discovered
122122

123123
---
124124

0 commit comments

Comments
 (0)