Skip to content

feat(members): Implement Members List and Detailed Profile Pages#10

Merged
TKanX merged 26 commits intomainfrom
feature/9-implement-members-list-and-detail-pages
Jan 29, 2026
Merged

feat(members): Implement Members List and Detailed Profile Pages#10
TKanX merged 26 commits intomainfrom
feature/9-implement-members-list-and-detail-pages

Conversation

@TKanX
Copy link
Copy Markdown
Member

@TKanX TKanX commented Jan 29, 2026

Summary:

Implemented a comprehensive system for displaying member information, including a filtered list view and rich individual profile pages. This feature allows users to browse members by category (Faculty, Postdoc, Student) and view detailed statistics, publication timelines, and biographical information for each member.

Changes:

  • Implemented Member List Page (src/app/(public)/members/page.tsx):

    • Created a responsive grid layout to display members, categorized by their roles.
    • Added a client-side filtering system (client.tsx) allowing users to toggle between viewing all members or specific categories (Faculty, Postdoc, etc.).
    • Developed MemberCard component with hover effects, tenure display, and active status indicators.
  • Implemented Member Detail Page (src/app/(public)/members/[id]/page.tsx):

    • Designed a rich profile layout featuring:
      • Header: Member photo, position, contact info (Email, Website, ORCID), and tenure.
      • Statistics: Real-time data visualization of total publications and citations.
      • Publication Timeline: An interactive bar chart showing publication activity over the years.
      • Biography & Education: Sections for personal bio and academic background.
      • Research Areas: Linked badges to associated research topics.
      • Publications List: A chronological list of the member's work, grouped by year.
    • Implemented dynamic metadata generation for SEO (createMemberMetadata).
  • Developed Database Queries (src/lib/db/queries/members.ts):

    • Added optimized Prisma queries to fetch members with full relations (categories, publications, research areas).
    • Implemented statistical aggregation logic to calculate yearly publication counts and total citations on the fly.
  • Added UI Components:

    • Integrated @radix-ui/react-tabs for future tabbed interfaces.
    • Created reusable sub-components: MemberGrid, PublicationTimeline, and Tabs wrappers.
  • Configured Metadata & Image Handling:

    • Added src/lib/metadata.ts to standardize SEO metadata generation across the site.
    • Updated next.config.mjs to allow images from ui-avatars.com, unsplash.com, and githubusercontent.com.
  • Updated Project Configuration:

    • Enabled TurboPack (next dev --turbo) for faster local development.

TKanX added 16 commits January 29, 2026 11:05
@TKanX TKanX self-assigned this Jan 29, 2026
Copilot AI review requested due to automatic review settings January 29, 2026 20:23
@TKanX TKanX added the enhancement ✨ New feature or request label Jan 29, 2026
@TKanX TKanX linked an issue Jan 29, 2026 that may be closed by this pull request
8 tasks
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR implements a comprehensive member management system with a filterable list view and detailed profile pages. The implementation includes database queries, UI components, metadata generation, and configuration updates to support displaying member information with publications, research areas, and statistics.

Changes:

  • Added member list and detail pages with filtering by category (Faculty, Postdoc, Student)
  • Implemented database queries for members with relations to publications and research areas
  • Created reusable UI components for member cards, grids, and publication timelines
  • Added metadata utilities for consistent SEO across member pages
  • Configured image domains and enabled TurboPack for development

Reviewed changes

Copilot reviewed 13 out of 14 changed files in this pull request and generated 10 comments.

Show a summary per file
File Description
src/lib/metadata.ts Utility functions for generating consistent page and member metadata for SEO
src/lib/db/queries/members.ts Optimized Prisma queries for fetching members with relations and computing statistics
src/components/ui/tabs.tsx Radix UI tabs wrapper component for future tabbed interfaces
src/components/member/publication-timeline.tsx Interactive bar chart visualizing publication activity over years
src/components/member/member-grid.tsx Responsive grid layout for displaying member cards
src/components/member/member-card.tsx Card component with hover effects, tenure display, and active status
src/components/member/index.ts Barrel export file for member components
src/app/layout.tsx Added metadataBase configuration for proper URL resolution
src/app/(public)/members/page.tsx Server component for members list page with category filtering
src/app/(public)/members/client.tsx Client component implementing category filter UI and grouped display
src/app/(public)/members/[id]/page.tsx Detailed member profile with stats, timeline, bio, and publications
package.json Added @radix-ui/react-tabs dependency and enabled TurboPack
package-lock.json Lock file updates for new dependencies
next.config.mjs Configured remote image patterns for external image sources

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/components/member/member-card.tsx Outdated
Comment thread src/components/member/member-card.tsx Outdated
Comment thread src/app/(public)/members/[id]/page.tsx Outdated
Comment thread next.config.mjs Outdated
Comment thread src/lib/db/queries/members.ts
Comment thread src/app/(public)/members/[id]/page.tsx Outdated
Comment thread src/components/member/publication-timeline.tsx
Comment thread src/lib/metadata.ts
Comment thread src/app/(public)/members/[id]/page.tsx
Comment thread src/lib/metadata.ts Outdated
@TKanX TKanX merged commit 3b01d11 into main Jan 29, 2026
2 checks passed
@TKanX TKanX deleted the feature/9-implement-members-list-and-detail-pages branch January 29, 2026 21:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement ✨ New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Implement Members List and Detail Pages

2 participants