Skip to content

feat: Task 4 — Team Page, linkedin_url, and role-grouped member display#11

Open
sachhayaKO wants to merge 2 commits into
mainfrom
agent/task-4-team-page
Open

feat: Task 4 — Team Page, linkedin_url, and role-grouped member display#11
sachhayaKO wants to merge 2 commits into
mainfrom
agent/task-4-team-page

Conversation

@sachhayaKO

Copy link
Copy Markdown
Collaborator

What this does

  • Adds linkedin_url field (String 500, nullable) to Membership model with Alembic migration 0004_membership_linkedin
  • Updates MembershipPublic, MembershipCreate, MembershipUpdate, and MemberPublic schemas to include linkedin_url; adds role (user sys role) to MemberPublic for hierarchy grouping
  • Updates GET /web/v1/members to return linkedin_url and role in each record
  • Adds linkedin_url input field to the ops tool member edit form (/members/[id])
  • Overhauls website MemberCard to show full profile: headshot, name, role_title, major + grad_year, hometown, campus_involvements, professional_experience, interests, email, LinkedIn link
  • Refactors TeamGrid to group members by hierarchy: Executive Board → Directors → Project Managers → Analysts
  • Updates getMembers() to return 4 role-based groups (eboard, directors, pms, analysts)
  • Updates TeamListBlock, TeamPage, and placeholder data to use the new structure
  • Updates shared @cba/types MemberPublic and Membership interfaces

How to test

  • Run alembic upgrade headlinkedin_url column added to memberships table
  • Open a member in the ops tool /members/[id] — LinkedIn URL field appears in the form
  • Save a LinkedIn URL — it persists and returns via GET /web/v1/members
  • Visit /team on the public website — members grouped into Executive Board / Directors / Project Managers / Analysts
  • Each member card shows headshot, name, role_title, major/grad year, hometown, involvements, experience, interests, email, LinkedIn link
  • GET /web/v1/members returns linkedin_url and role fields

🤖 CBA Feature Agent

- Add linkedin_url field (String 500, nullable) to Membership model + migration 0004
- Add linkedin_url to MembershipPublic, MembershipCreate, MembershipUpdate schemas
- Add linkedin_url and role (user's system role) to MemberPublic schema and web endpoint
- Update GET /web/v1/members to include linkedin_url and role in response
- Add linkedin_url field to ops tool member edit form
- Update shared MemberPublic and Membership TypeScript types
- Overhaul website MemberCard to show full profile (major/grad_year, hometown, campus_involvements, experience, interests, email, LinkedIn)
- Refactor TeamGrid to group members by hierarchy: eboard → directors → PMs → analysts
- Update getMembers() API helper to return 4 role-based groups
- Update TeamListBlock and TeamPage to use new structure
- Update placeholder data with new required fields

https://claude.ai/code/session_01Qgt2UQQUmaNSo3ViCXfVnb
@vercel

vercel Bot commented Jun 10, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
cba-ops-frontend Ready Ready Preview, Comment Jun 10, 2026 4:10am
cba-website Ready Ready Preview, Comment Jun 10, 2026 4:10am

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.

1 participant