Skip to content

Profile: Introduced GitHub's popular repositories on the Overview tab - #159

Draft
whereareiam wants to merge 1 commit into
devfrom
feat/profile-overview-github
Draft

whereareiam wants to merge 1 commit into
devfrom
feat/profile-overview-github

Conversation

@whereareiam

@whereareiam whereareiam commented Oct 28, 2026 •

Copy link
Copy Markdown
Owner

Summary

I compared Forgejo's profile Overview tab, which opens when a person has a .profile README, with the Overview on GitHub's profiles and changed what differed.

  • Popular repositories under the README: up to six of the person's public repositories, most-starred first, now appear below the profile README. The cards sit two to a row on desktop and one to a row on phones.
  • GitHub's repository cards: each card shows the repository icon (a fork or mirror keeps its own icon), the name, and the visibility, archived and template labels as the theme's muted pill labels. Below that come the description and a bottom row with the language, stars and forks, the last two only when there are any. Cards in a row are the same height, so their bottom rows line up as on GitHub.
  • Nothing when there is nothing to show: the section stays hidden until it has cards. A person without public repositories, or a request that fails, sees the README alone, as before.

Forgejo loads no repositories for the Overview tab. A small script, profile-overview.js, therefore requests the person's Repositories tab once, sorted by most stars and filtered to public repositories, and builds the cards from that server-rendered list. It reads only from the same origin, and the cards keep Forgejo's own links, labels, language colours and star/fork aria-labels.

Already matching, so unchanged: the Overview tab and its place in the profile tabs, and the README box with its user / .profile heading.

Left out because Forgejo works differently: pinned repositories and "Customize your pins" (Forgejo has no pinning), and the "Popular" wording (Forgejo has no string for it, so the heading uses Forgejo's "Repositories"). The contribution graph and activity also stay on the Public activity tab: Forgejo loads the heatmap data only for that tab, and its heatmap starts only on page load.

Draft, for a decision: Forgejo's handler loads no repositories for the Overview tab, so profile-overview.js fetches the person's Repositories tab page and builds the six cards from that server-rendered list. That is one extra full-page request per Overview view, and it depends on the repository list's markup. The alternative is to leave the cards out until Forgejo provides the data.

Before and after

Before After
Profile Overview before Profile Overview after

Release notes

  • The title follows Area: Description with a listed area
  • The title describes the effect in the past tense, for example Branches: Fixed ...
  • Exactly one label: feature, change, bug, dependencies, or skip-changelog
  • bug only for a bug that shipped in a release; a fix for a bug that only existed on dev is skip-changelog
  • major added when admins must act on upgrade, for example a new minimum Forgejo version
  • Upgrade steps or warnings added to .github/release-notes.md, if admins need them

Checks

  • Tests added or updated
  • Checked in the dev preview at desktop and phone width, in dark and light mode

🤖 Generated with Claude Code

A person with a .profile README opens on Overview, which showed only
the README. GitHub puts the person's popular repositories below it, two
cards to a row and one on phones: the repository icon, the name, its
visibility label, the description and the language, stars and forks,
the counts only when there are any. The labels are the theme's muted
pill label from components/common/label rather than a copy of it.

Forgejo loads no repositories for the Overview tab, so a small script,
profile-overview.js, takes the first six of the Repositories tab
sorted by most stars and limited to public repositories, the
server-rendered list the theme already updates in place, and builds
the cards from it. The section stays hidden until it has cards, so a
person without public repositories, or a failed request, shows the
README alone. A fork or mirror keeps the list's own icon for its kind.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@whereareiam whereareiam added the feature Something new for users label Oct 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature Something new for users

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant