Skip to content

feat(profile): add GitHub repositories section to user profile#5597

Open
AmarTrebinjac wants to merge 2 commits intomainfrom
eng-821-add-github-repos-to-profile
Open

feat(profile): add GitHub repositories section to user profile#5597
AmarTrebinjac wants to merge 2 commits intomainfrom
eng-821-add-github-repos-to-profile

Conversation

@AmarTrebinjac
Copy link
Contributor

@AmarTrebinjac AmarTrebinjac commented Feb 25, 2026

Summary

  • Add new ProfileUserGithubRepos section to user profile pages, displaying top public GitHub repos in a 2-column card grid
  • Create GithubRepoCard component styled like GitHub's repo cards — shows name, description, language with color dot, stars, and forks
  • Add useUserGithubRepos hook using TanStack Query, enabled only when user has a GitHub social link
  • Add GraphQL query + types in packages/shared/src/graphql/github.ts
  • Add static language-to-color map for 31 common programming languages

Key decisions

  • Section renders between Highlights and Experiences on the profile page
  • Loading state uses skeleton placeholders in the same grid layout to avoid layout shift
  • Section hidden entirely when user has no GitHub link or repos are empty
  • Fork icon uses inline SVG since no ForkIcon exists in the icon system

Test plan

  • View profile of user with GitHub in socialLinks — repos section appears
  • View profile of user without GitHub — section is hidden
  • Verify loading skeletons display while fetching
  • Verify repo cards show name, description, language dot, stars, forks
  • Verify cards link to correct GitHub repo URLs
  • Verify responsive layout: 1 column on mobile, 2 columns on laptop+

Closes ENG-821


Created by Huginn 🐦‍⬛

Preview domain

https://eng-821-add-github-repos-to-prof.preview.app.daily.dev

Display public GitHub repos on user profiles with repo cards showing
name, description, language, stars, and forks. Repos are fetched via
the new userGithubRepositories GraphQL query when a GitHub social link
is present. Includes GithubRepoCard, ProfileUserGithubRepos components,
useUserGithubRepos hook, and language color mapping utility.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@vercel
Copy link

vercel bot commented Feb 25, 2026

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

Project Deployment Actions Updated (UTC)
daily-webapp Ready Ready Preview Mar 2, 2026 1:30am
1 Skipped Deployment
Project Deployment Actions Updated (UTC)
storybook Ignored Ignored Mar 2, 2026 1:30am

Request Review

@AmarTrebinjac
Copy link
Contributor Author

@claude Please solve the merge conflict if its trivial, otherwise let me know and I will serve it manually

@claude
Copy link
Contributor

claude bot commented Mar 2, 2026

Claude finished @AmarTrebinjac's task in 2m 57s —— View job


Merge conflict resolved

  • Investigate merge conflicts
  • Resolve conflicts
  • Commit and push resolved merge

Summary: The merge conflict was trivial — only 1 file needed manual resolution:

packages/shared/src/lib/query.ts — The RequestKey enum had a conflict:

  • This branch added UserGithubRepos = 'user_github_repos'
  • Main had added Arena, TopSentimentEntities, ShowcaseAchievements
  • Resolution: kept all 4 entries

packages/webapp/pages/[userId]/index.tsx auto-merged cleanly — both ProfileAchievementShowcase (added to main while this branch was open) and ProfileUserGithubRepos (this PR's addition) are now present.

# Conflicts:
#	packages/shared/src/lib/query.ts
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