Skip to content

SEO: server-render list pages with GET search pagination#10

Open
go165 wants to merge 1 commit into
GoodAction-Hub:mainfrom
go165:goodaction-issue-8-server-list-pages
Open

SEO: server-render list pages with GET search pagination#10
go165 wants to merge 1 commit into
GoodAction-Hub:mainfrom
go165:goodaction-issue-8-server-list-pages

Conversation

@go165

@go165 go165 commented Jun 13, 2026

Copy link
Copy Markdown

PR-10 PR-10 PR-10 Powered by Pull Request Badge

Summary

  • convert the activities, restaurants, and tutoring list pages from client-owned data loading to server components
  • replace list search/filter controls with same-page GET forms backed by URL query params
  • add shared 10-item pagination links at the end of each list while preserving activity favorites/timezone and restaurant navigation as client child components

This is a smaller source-only alternative for issue #8. I noticed the existing PR #9 is still open with requested changes around scope/regressions/external generated UI; this PR avoids package/config/registry changes and keeps the diff limited to the list-page behavior.

Fixes #8

Validation

  • bun run build
  • bun run test

Note: one pre-push attempt failed because Turbopack could not resolve cached Google font internals after a transient fonts.gstatic.com fetch failure. After removing .next, bun run build passed again; the pushed commit itself is unchanged.

@go165

go165 commented Jun 13, 2026

Copy link
Copy Markdown
Author

Payout address if reward-eligible: 0x1f0130669ca6fd02e025a984cc038f139df19a2f

@go165 go165 left a comment

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Automated code quality review generated by pr_reviewer.py for BountyBook validation.

Repository: GoodAction-Hub/GoodAction-Hub.github.io PR: #10
Files reviewed: 8
Issues found: 15

  • app/activities/page.tsx: function ActivitiesPage is 76 added lines; consider splitting it.
  • app/activities/page.tsx: exported function flattenEvents has no nearby JSDoc comment.
  • app/activities/page.tsx: exported function ActivitiesPage has no nearby JSDoc comment.
  • app/restaurants/page.tsx: function BarrierFreeBitesPage is 79 added lines; consider splitting it.
  • app/restaurants/page.tsx: exported function matchesQuery has no nearby JSDoc comment.
  • app/restaurants/page.tsx: exported function BarrierFreeBitesPage has no nearby JSDoc comment.
  • app/tutoring/page.tsx: function TutoringPage is 58 added lines; consider splitting it.
  • app/tutoring/page.tsx: exported function matchesQuery has no nearby JSDoc comment.
  • app/tutoring/page.tsx: exported function TutoringPage has no nearby JSDoc comment.
  • components/FavoriteEventsFilter.tsx: exported function FavoriteEventsToggle has no nearby JSDoc comment.
  • components/FavoriteEventsFilter.tsx: exported function FavoriteEventItem has no nearby JSDoc comment.
  • components/Pagination.tsx: exported function Pagination has no nearby JSDoc comment.
  • components/RestaurantNavigationButton.tsx: function RestaurantNavigationButton is 90 added lines; consider splitting it.
  • components/RestaurantNavigationButton.tsx: exported function RestaurantNavigationButton has no nearby JSDoc comment.
  • lib/activities.ts: exported function fetchActivities has no nearby JSDoc comment.

Checks covered: long functions, missing Python docstrings, bare except clauses, credential-looking literals, and TODO/FIXME comments.

@go165

go165 commented Jun 14, 2026

Copy link
Copy Markdown
Author

Clarification on the automated review above: that was a non-blocking validation run for a separate PR-reviewer tooling bounty. It is not a maintainer-facing change request for this PR, and I am not asking for scope changes here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

对 GoodActionHub 进行 SEO

1 participant