Repository navigation
Product feedback - #13
Conversation
…toggle - Category tiles and filter icons use per-category color tokens via a single CATEGORY_META map - Featured projects band (featured === true, newest first, max 3) - Filters: Topics, Language, Sefaria resources, Built with, with faceted counts, disclosures, active-filter chips and URL state - Replace "Open source only" with "Show projects with known issues" (off by default); buggy projects show a Known issues badge - Update docs/REDESIGN_SPEC.md (§16) and add unit, component and e2e tests Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
📊 Code Quality Score: 65/100
Was this score accurate? 👍 Yes · 👎 No Scored by GitVelocity · How are scores calculated? |
There was a problem hiding this comment.
🟡 Changes recommended
Both “Clear all” actions preserve search text contrary to the updated specification.
2 open findings
What changed in this PR
Adds faceted filtering, category colors, featured projects, and known-issue visibility controls.
Changes:
- Adds data-driven filters with URL persistence.
- Adds category styling and a featured-project band.
- Hides buggy projects by default and displays warning badges.
| File | Description |
|---|---|
src/styles/tokens.css |
Adds category colors. |
src/lib/url.ts |
Serializes new filters. |
src/lib/project.ts |
Normalizes new project fields. |
src/lib/languages.ts |
Recognizes language tags. |
src/lib/filter.ts |
Implements faceted filtering. |
src/lib/featured.ts |
Selects featured projects. |
src/lib/categories.ts |
Centralizes category presentation. |
src/lib/__tests__/url.test.ts |
Tests filter URLs. |
src/lib/__tests__/project.test.ts |
Tests normalization. |
src/lib/__tests__/filter.test.ts |
Tests facets and visibility. |
src/lib/__tests__/featured.test.ts |
Tests featured selection. |
src/lib/__tests__/categories.test.ts |
Tests category metadata. |
src/hooks/useMediaQuery.ts |
Adds featured breakpoint. |
src/features/project/ProjectDialog.tsx |
Shows known-issue badges. |
src/features/project/ProjectDialog.module.css |
Styles dialog header. |
src/features/project/__tests__/ProjectDialog.test.tsx |
Tests dialog badges. |
src/features/featured/FeaturedProjects.tsx |
Adds featured band. |
src/features/featured/FeaturedProjects.module.css |
Styles featured layout. |
src/features/featured/FeaturedCard.tsx |
Adds featured cards. |
src/features/featured/FeaturedCard.module.css |
Styles featured cards. |
src/features/featured/__tests__/FeaturedProjects.test.tsx |
Tests featured UI. |
src/features/charts/selectors.ts |
Preserves tag analytics. |
src/features/browse/ProjectList.tsx |
Updates list metadata. |
src/features/browse/ProjectCard.tsx |
Updates cards and badges. |
src/features/browse/FilterSheet.tsx |
Adds pending facet controls. |
src/features/browse/FilterSection.tsx |
Adds filter disclosures. |
src/features/browse/FilterSection.module.css |
Styles disclosures. |
src/features/browse/FilterPanel.tsx |
Renders expanded filter panel. |
src/features/browse/FilterPanel.module.css |
Styles panel rows. |
src/features/browse/FacetGroup.tsx |
Adds checkbox facets. |
src/features/browse/FacetGroup.module.css |
Styles facet controls. |
src/features/browse/BrowsePage.tsx |
Integrates filtering and featured content. |
src/features/browse/BrowsePage.module.css |
Makes filters sticky. |
src/features/browse/ActiveFilters.tsx |
Adds removable filter chips. |
src/features/browse/ActiveFilters.module.css |
Updates chip layout. |
src/features/browse/__tests__/ProjectList.test.tsx |
Tests list badges. |
src/features/browse/__tests__/ProjectCard.test.tsx |
Tests card colors and badges. |
src/features/browse/__tests__/FilterSheet.test.tsx |
Tests pending filters. |
src/features/browse/__tests__/FilterPanel.test.tsx |
Tests filter controls. |
src/features/browse/__tests__/BrowsePage.test.tsx |
Tests integrated behavior. |
src/components/ui/Switch.tsx |
Adds accessible switch. |
src/components/ui/Switch.module.css |
Styles switch. |
src/components/ui/KnownIssuesBadge.tsx |
Adds issue badge. |
src/components/ui/KnownIssuesBadge.module.css |
Styles issue badge. |
src/components/icons/CategoryIcon.tsx |
Applies category metadata. |
src/components/icons/CategoryIcon.module.css |
Applies category colors. |
e2e/support.ts |
Adds fixture helpers. |
e2e/screenshots.spec.ts |
Adds revision screenshots. |
e2e/layout.spec.ts |
Extends layout checks. |
e2e/filters.spec.ts |
Adds filter E2E coverage. |
e2e/featured.spec.ts |
Adds featured E2E coverage. |
e2e/browse.spec.ts |
Updates browse expectations. |
docs/REDESIGN_SPEC.md |
Documents revision requirements. |
🧠 Review effort: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| ) | ||
| })} | ||
| <li> | ||
| <Button variant="text" onClick={() => onChange(CLEARED_VALUES)}> |
| <Button | ||
| variant="text" | ||
| onClick={() => setPending((current) => ({ ...current, ...CLEARED_VALUES }))} | ||
| > |
The chips-row and filter-sheet "Clear all" buttons left the search query in place, contrary to the spec. Both now clear the search and every filter value, and still leave the known-issues display switch alone. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
📊 Code Quality Score: 66/100
Was this score accurate? 👍 Yes · 👎 No Scored by GitVelocity · How are scores calculated? |

This PR adds additional filtering, coloring, a featured projects "zone" and an is buggy toggle