Skip to main content
Widget v1 · Free for everyone · 0 KB JS

A GitHub stats card
your README deserves.

Five themed SVG widgets. Drop an <img> tag into your README — works on GitHub, dev.to, hashnode, email signatures, anywhere CSP-strict hosts render images. Free forever.

What this looks like in your README.md:
![Ankur Halder's GitHub Stats](https://www.ankurhalder.com/api/widget/ankurhalder/stats.svg?theme=glass-dark&cardWidth=520)

That's it. One line of markdown. Works on every README.

HTML equivalent
<img src="https://www.ankurhalder.com/api/widget/ankurhalder/stats.svg?theme=glass-dark&cardWidth=520" alt="Ankur Halder's GitHub Stats" />
  • 0 KBJS shipped
  • 5Widgets
  • 7Themes
  • openCORS
  • Free foreverPrice
60-second explainer

What's a GitHub widget?

It's the small card you see on a developer's profile — showing how many stars they have, what languages they use, how consistent their commits are. Most developer portfolios use one to prove they actually ship code.

Engive is ours: a free embeddable GitHub widget you drop into your GitHub README, blog, or portfolio as a single SVG image. No build step. No API key. No server to run. Works everywhere — READMEs, static sites, emails.

If you don't write code, that's fine — share a developer you admire. The card looks great on any site.

What you see on the developer card

  • Total stars earned across all public repos
  • Top languages with percentage breakdown
  • Current commit streak (consecutive days)
  • Total contribution count over the last year
  • Profile photo, bio, and a link back to GitHub

All data is fetched from GitHub's public API and cached at the edge for 24 hours. No personal data is stored.

The widget set

Five widgets, five SVG endpoints. Use any combination in your README — they all share the same cache, the same query-param customization, and the same CORS / 24h edge cache.

Developer Chronicle

Avatar, bio, top languages, stars, commits, and daily streak.

/stats.svg
Copy embed code
![Developer Chronicle for @ankurhalder](https://www.ankurhalder.com/api/widget/ankurhalder/stats.svg?theme=glass-dark&cardWidth=480)

Streak

Current streak, longest streak, total commits.

/streak.svg
Copy embed code
![Streak for @ankurhalder](https://www.ankurhalder.com/api/widget/ankurhalder/streak.svg?theme=dracula&cardWidth=360)

Streak Trophy

Mega card with streaks, commits, stars, repos and a rank badge.

/streak-trophy.svg
Copy embed code
![Streak Trophy for @ankurhalder](https://www.ankurhalder.com/api/widget/ankurhalder/streak-trophy.svg?theme=dracula&cardWidth=480)

Top Languages

Horizontal bars of top languages by bytes written.

/top-languages.svg
Copy embed code
![Top Languages for @ankurhalder](https://www.ankurhalder.com/api/widget/ankurhalder/top-languages.svg?theme=glass-dark&cardWidth=480)

Contribution Graph

53-week contribution heat-map plus commit & streak totals.

/contributions.svg
Copy embed code
![Contribution Graph for @ankurhalder](https://www.ankurhalder.com/api/widget/ankurhalder/contributions.svg?theme=glass-dark&cardWidth=820)

Repo Showcase

Featured repositories with stars, forks, language, topics.

/repos.svg
Copy embed code
![Repo Showcase for @ankurhalder](https://www.ankurhalder.com/api/widget/ankurhalder/repos.svg?theme=glass-dark&cardWidth=820)
Embed in 30 seconds

Drop one line. Render a card.

Every widget is a single SVG. One <img> tag. No build step, no React, no JavaScript on the host page. Customize colors, fonts, borders via URL query parameters — no signup.

@ankurhalder is not on the widget allow-list on this instance, so /api/widget/ankurhalder answers 404 not_registered. The card below is a designed frame, not a broken image: it renders as soon as the handle is registered. The snippets below are the real endpoint shape — swap ankurhalder for a registered handle and they render immediately.

README.md0 KB JS
Developer Chronicle
![Developer Chronicle for @ankurhalder](https://www.ankurhalder.com/api/widget/ankurhalder/stats.svg?theme=glass-dark&cardWidth=520)
Streak
![Streak for @ankurhalder](https://www.ankurhalder.com/api/widget/ankurhalder/streak.svg?theme=dracula&cardWidth=400)
Streak Trophy
![Streak Trophy for @ankurhalder](https://www.ankurhalder.com/api/widget/ankurhalder/streak-trophy.svg?theme=dracula&cardWidth=480)
Top Languages
![Top Languages for @ankurhalder](https://www.ankurhalder.com/api/widget/ankurhalder/top-languages.svg?theme=glass-dark&cardWidth=480)
Contribution Graph
![Contribution Graph for @ankurhalder](https://www.ankurhalder.com/api/widget/ankurhalder/contributions.svg?theme=glass-dark&cardWidth=820)
Featured Repos
![Featured Repos for @ankurhalder](https://www.ankurhalder.com/api/widget/ankurhalder/repos.svg?theme=glass-dark&cardWidth=820)

Replace ankurhalder with your GitHub username and glass-dark with any theme. The endpoint returns an SVG that renders identically in GitHub, dev.to, hashnode, Gmail, Outlook, Apple Mail, and most newsletter platforms.

Embed in 10 secondsNo build. No JS. No signup.

Three steps. One <img> tag.

  1. 1

    Pick a username

    Any public GitHub handle. We'll fetch the live stats.

  2. 2

    Pick a theme

    Or open the full playground to customize every token.

  3. 3

    Copy and paste

    ![ankurhalder on GitHub](https://www.ankurhalder.com/api/widget/ankurhalder/stats.svg?theme=glass-dark&cardWidth=480)

    Drop this in any HTML, README, or blog post.

1 real user dogfooding

Showcase

Real GitHub users, real stats, real themes. Every card below is a live SVG endpoint — same one you can embed.

Show some love. Drop the badge.

If the widget earned you a job offer, a freelance gig, or just brightened your README — drop the badge. It links back here. Free, optional, 180×32.

Powered by Engive badge previewLive preview
README.md
<!-- Powered by Engive -->
<a href="https://www.ankurhalder.com/widget" target="_blank" rel="noopener noreferrer">
  <img src="https://www.ankurhalder.com/widget/powered-by.svg"
       alt="Powered by Engive"
       width="180"
       height="32" />
</a>

Why Engive

0 KB JS in your README

GitHub strips <script>. So every Engive widget is a pure server-rendered SVG served from a single <img> tag. Zero JS shipped to your host page. Zero CSP conflicts.

6 widgets, 6 endpoints

Developer Chronicle, Streak, Streak Trophy, Top Languages, Contribution Graph, Repo Showcase. One URL pattern each. All themeable via query params. All cached at the edge for 24h.

Designed, not generated

The cards use the same glass-morphism aesthetic as ankurhalder.com's Developer Chronicle. 7 hand-curated presets. Every pixel intentional. Every query parameter documented.

What's next

We are constantly evolving. Here is what is active and planned:

  • ✓
    SVG endpoints for all 5 widgets + query-param customization — every visual setting maps 1:1 to a URL query parameter. No signup, no auth, no JavaScript on the host page.
  • 1
    More themes, more widgets — additional curated presets (light variants, high-contrast) and a rank-stars widget for org profiles.
  • 2
    More dogfooding — auto-include the widget on every portfolio + blog post, with inline reading-time and per-article stats.

Ship your widget today.

Open the preview, design your theme, copy your <img> URL. Free for everyone, forever.

Ankur Halder

Loading portfolio…