Skip to content

feat: embeddable profile/repo widgets - #17

Closed
NotAFlightRisk wants to merge 4 commits into
mainfrom
feat/profile-widgets
Closed

NotAFlightRisk wants to merge 4 commits into
mainfrom
feat/profile-widgets

Conversation

@NotAFlightRisk

@NotAFlightRisk NotAFlightRisk commented Nov 12, 2026 •

Copy link
Copy Markdown
Owner

Category

Feature

Overview

A new Profile widgets page (/profile-widgets) for building embeddable SVG stat cards for GitHub READMEs.

  • Six widgets: rank card, headline, trophies, star map, podium and languages
  • Repos get the first three, since they have one language and no repos of their own
  • Served at /users/:login/:widget.svg and /repositories/:login/:repo/:widget.svg
  • Options for theme, accent, background, border and corner radius, all in the query string
  • Follows the reader's light or dark mode by default
  • Each widget links back to the site, with a small git-star-ranking.com credit
  • User and repo pages get "Make a badge" and "Make a widget" buttons below the charts

Also:

  • The badge builder now shares its layout, subject field and preview with the widget builder
  • The README documents the widget URLs and options, and the page is in the sitemap
  • Widgets are left out of the footer and the profile badge section for now

Issue Number

N/A

Additional Info

Some screnshots of the widgets:

image image
image image
image image
image image
image image

@github-actions github-actions Bot added the enhancement New feature or request label Nov 12, 2026
repos: [repo('<b>"x"</b>', 42_000, 'Rust', 90, 7), ...ranked.repos]
};
for (const svg of await all(sly)) {
expect(svg).not.toMatch(/<script>|<b>/);

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

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

That's just a test. Could fix, but is it worth making the code longer and more complex?

Comment thread tests/lib/server/widgets.test.ts Resolved
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.

2 participants